首页 > 解决方案 > 如何将构建 docker 容器的命令放入 dockerfile?

问题描述

我有脚本:docker run -it -p 4000:4000 bitgosdk/express:latest --disablessl -e test 如何将此命令与参数一起放入 dockerfile?

FROM bitgosdk/express:latest
EXPOSE 4000
???

标签: dockerdockerfile

解决方案


浏览您的Dockerfile 内容

在容器内运行的命令是:

/ # ps -ef | more
PID   USER     TIME  COMMAND
    1 root      0:00 /sbin/tini -- /usr/local/bin/node /var/bitgo-express/bin/bitgo-express --disablessl -e test

该命令之所以如此,是因为 Dockerfile 中设置的入口点是ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/node", "/var/bitgo-express/bin/bitgo-express"],而参数--disablessl -e test是在运行docker run命令时提供的。

可以使用以下--disablessl -e test方法在 Dockerfile 中设置参数CMD

CMD ["--disablessl", "-e","test"]

新的 Dockerfile

FROM bitgosdk/express:latest
EXPOSE 4000
CMD ["--disablessl", "-e","test"]

请参阅this以了解entrypoint 和 cmd 之间的区别


推荐阅读