1、Run
构造镜像的时候在镜像里面添加一些东西或者下载一些东西。对镜像里面的内容发生改变。
2、ENTRYPOINT
只要定义了, 镜像启动时就会执行的命令。如果都没有的话就用默认的/bin/sh -c。后面的CMD 指令也会拼接ENTRYPOINT。
3、CMD
启动命令,会拼接到Entrypoint上。可以被docker cli后面的启动时用户参数替换,如果用户没加就使用默认的。
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