转 Dock 外 命令解析

Posted feiyun8616的作坊 (半个程序员and dba)

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了转 Dock 外 命令解析相关的知识,希望对你有一定的参考价值。


RUN vs CMD vs ENTRYPOINT - 每天5分钟玩转 Docker 容器技术(17)

 

小结:

run 主要是安装镜像,安装软件。

CMD 设置容器启动后默认执行的命令及其参数,但 CMD 能够被 docker run 后面跟的命令行参数替换。

ENTRYPOINT 配置容器启动时运行的命令。

 

:Shell 格式和 Exec 格式

shell 格式,是在一个shell 里执行

exec ,是每一条命令,都是独立的

 

Exec 格式 比较复杂,

ENTRYPOINT 的 Exec 格式用于设置要执行的命令及其参数,同时可通过 CMD 提供额外的参数。

ENTRYPOINT 中的参数始终会被使用,而 CMD 的额外参数可以在容器启动时动态替换掉。

比如下面的 Dockerfile 片段:

ENTRYPOINT ["/bin/echo", "Hello"]  

CMD ["world"]

-->这里CMD ["param1","param2"] 为 ENTRYPOINT 提供额外的参数,此时 ENTRYPOINT 必须使用 Exec 格式。 这一点注意下

 

当容器通过 docker run -it [image] 启动时,输出为:

Hello world

 

而如果通过 docker run -it [image] CloudMan 启动,则输出为:

Hello CloudMan

 

关于其中的差别,还是需要进一步归纳,

以上是关于转 Dock 外 命令解析的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Dock 中的程序快捷方式中检索命令行参数?

很实用的JQuery代码片段(转)

几个有用的JavaScript/jQuery代码片段(转)

实用代码片段将json数据绑定到html元素 (转)

如何在kotlin中从一个片段转到另一个片段?

linux打开终端如何启动scala,如何在终端下运行Scala代码片段?