我是 docker 新手,所以我不确定是否有更简单的方法来解决这个问题。我想使用node docker层作为我的基础层,只有dockerfile中的CMD默认设置为CMD [“npm”,“start]
。有没有办法改变这个初始CMD?
变更原因: 我有一个特定的启动脚本来启用生产模式,并且我希望保持我的设置不变。
FROM node:6.6.0
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
ONBUILD ARG NODE_ENV
ONBUILD ENV NODE_ENV $NODE_ENV
ONBUILD COPY package.json /usr/src/app/
ONBUILD RUN npm install
ONBUILD COPY . /usr/src/app
CMD [ "npm", "start" ]
最佳答案
或者您可以从基础创建一个新图像并仅指定一个新的 CMD:
FROM <image-which-does-almost-exactly-what-i-want>
CMD ["my", "replacement", "command"]
构建镜像时,您可以直接运行它,而无需在最后添加新命令。当基础镜像发生更改时,只需重建您的镜像即可获得所有更新。
关于node.js - 可以更改 Node 层的CMD吗-Docker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39634293/