dockerfile 的 RUN、CMD、ENTRYPOINT指令区别

1、Run

构造镜像的时候在镜像里面添加一些东西或者下载一些东西。对镜像里面的内容发生改变。

2、ENTRYPOINT

只要定义了, 镜像启动时就会执行的命令。如果都没有的话就用默认的/bin/sh -c。后面的CMD 指令也会拼接ENTRYPOINT。

3、CMD

启动命令,会拼接到Entrypoint上。可以被docker cli后面的启动时用户参数替换,如果用户没加就使用默认的。

https://www.bookstack.cn/read/ctripcorp-apollo/66fd39d228fadcad.md

CMD和ENTRYPOINT执行命令都支持这两种格式:

Shell command form

Executable command form

[“executable”, “parameter 1”, “parameter 2”, …]

相关链接:
https://www.bmc.com/blogs/docker-cmd-vs-entrypoint/
https://stackoverflow.com/questions/21553353/what-is-the-difference-between-cmd-and-entrypoint-in-a-dockerfile

版权声明:本文为qq_42873554原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。