docker 里面安装 npm 需要的前置依赖[傻瓜式]

梦浪的小虾米
2021-10-01 / 0 评论 / 3,709 阅读 / 正在检测是否收录...

前言

作者最近在学 docker + laravel 。

环境

  1. 镜像说明

作者使用的是 node:alipine 镜像包。里面除了最小镜像 + node 外,就啥也没有了

问题

众所周知,laravel 的一些依赖包需要使用 npm 进行一系列的操作,作者还没有搞懂是干嘛的,但是还是秉着有问题就上的原则,解决这些问题

  1. npm 需要使用最新的 python 。 没搞懂,为啥要使用最新的 python
  2. npm 需要使用 make 指令

 解决方案

虽然没有搞懂为啥需要 python 和 make ,但是既然需要,那就安排上。

在 Dockerfile 中增加如下一段指令。简单来说就是让它安装 git python3 以及编译环境

RUN apk add --no-cache git python3 gcc g++ make libffi-dev openssl-dev libtool

修改前的 Dockerfile

FROM node:alpine

RUN apk add --no-cache git 

修改后的 Dockerfile

FROM node:alpine

RUN apk add --no-cache git python3 gcc g++ make libffi-dev openssl-dev libtool

end

修改完成后,重新使用 Dockerfile 生成镜像,生成成功后,就可以执行 npm install 命令了。

附录

  1. 构建镜像

docker build -t 镜像名字 指定的目录

  1. 启动容器

docker run -dit 镜像名字 这里还有其它你需要的指令。

鸣谢

参考文章:

https://www.maxbon.cn/2019/09/20/137.html

https://www.cnblogs.com/xy14/p/11980272.html

1

评论 (0)

取消