dockerfile 的 RUN、CMD、ENTRYPOINT指令区别

1、Run

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

2、ENTRYPOINT

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

3、CMD

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

dockerfile 的 RUN、CMD、ENTRYPOINT指令区别_第1张图片

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

你可能感兴趣的:(工具,docker,linux,运维)