最近发现之前写的 Node.js 镜像执行不了了,排查了下问题发现是 alpine 下的 node-npm 这个依赖包改名字了。之前是 node-npm,现在改成了 npm ,所以把之前的 Dockerfile 改一下就行了。
FROM alpine:latest
# 安装nodejs环境,国内使用阿里云镜像加速,不然太慢了,打包服务器在国外的可以不改。
RUN echo "http://mirrors.aliyun.com/alpine/edge/main/" > /etc/apk/repositories \
&& echo "http://mirrors.aliyun.com/alpine/edge/community/" >> /etc/apk/repositories \
&& apk update \
&& apk add --no-cache --update nodejs npm \ # 关于版本问题,生产环境建议锁定版本
&& node -v && npm -v \
&& npm config set registry https://registry.npm.taobao.org
ENV NODE_ENV production
WORKDIR /home/app
COPY package.json /home/app/
RUN npm install --production
COPY . /home/app
EXPOSE 8080
CMD ["npm", "start"]
本文作者:草梅友仁
本文原地址: blog.cmyr.ltd/archives/41…
版权声明:转载请注明出处!