CMD指令和ENTRYPOINT指令的作用都是为镜像指定容器启动后的命令。
CMD
支持三种格式CMD ["executable","param1","param2"] 使用 exec 执行,推荐方式;
CMD command param1 param2 shell中执行 ( /bin/sh ),提供给需要交互的应用;
CMD ["param1","param2"] 注: 当Dockerfile内有ENTRYPOINT命令时,CMD命令会变成参数追加到ENTRYPOINT命令后;
指定启动容器时执行的命令,每个 Dockerfile只能有一条 CMD 命令。如果指定了多条命令,只有最后一条会被执行。如果用户启动容器时候指定了运行的命令,则会覆盖掉 CMD 指定的命令。
ENTRYPOINT
两种格式:ENTRYPOINT ["executable", "param1", "param2"] 使用 exec 执行,推荐方式;
ENTRYPOINT command param1 param2 shell中执行 ( /bin/sh )
配置容器启动后执行的命令,并且不可被 docker run 提供的参数覆盖。
每个 Dockerfile 中只能

CMD和ENTRYPOINT是Dockerfile中用于定义容器启动命令的指令。CMD可被dockerrun覆盖,常用于提供默认行为;ENTRYPOINT不可覆盖,确保基础命令始终执行,并将运行时参数附加其后。当两者共存时,CMD可作为ENTRYPOINT的默认参数,但仍可被dockerrun参数覆盖。
最低0.47元/天 解锁文章
2890

被折叠的 条评论
为什么被折叠?



