由于在Docker中出现”/bin/sh: apt-get: not found”的错误,无法进行构建
在终端中出现”/bin/sh: apt-get: not found”。
参考于下列文章,尝试在Dockerfile中使用apt-get安装npm时出现了问题。
// このエラーが出た
/bin/sh: apt-get: not found
结论- 在Alpine Linux上不能使用Ubuntu的软件包管理器。
在这篇文章中提到,Alpine Linux的映像无法使用Ubuntu的软件包管理器apt-get。
在Alpine Linux上可以通过补充数据将Docker镜像大大缩小。
解决 – apk添加 –更新 nodejs nodejs-npm
解决办法是将apt-get替换为apk add。
我安装了nodejs并使用npm,成功执行了apk add –update nodejs nodejs-npm!
请在Dockerfile中添加这个!
RUN apk add --update nodejs nodejs-npm
如果您想要在一个RUN命令中执行,可以使用&&来连接!这种写法似乎是被推荐的方式!
RUN xxxx yyyy aaa && \
aaa bbbb aa && \
ccc hhhh iio && \
apk add --update nodejs nodejs-npm
参考文章↓
https://superuser.com/questions/1125969/alpine-linux上如何安装npm
确认
大致确认的方式是这样的,
$ docker-compose up -d --build
如果你告诉我已经完成,我会进入容器内部如下:
// 例
$ docker-compose exec {services} ash
// 僕の場合はphpやlaravelが入ってくるコンテナがappなので
$ docker-compose exec app ash
请以这种方式进行确认!
/WORK # node -v
> v10.16.0