首页服务器Web服务器 Dockerfile中CMD和ENTRYPOINT命令详解

Dockerfile中CMD和ENTRYPOINT命令详解

前言 CMD 和 ENTRYPOINT 指令都是用来指定容器启动时运行的命令。 单从功能上来看,这两个命令几乎是重复的。单独使用其中的一个就可以实现绝大多数的用例。但是既然 doker…

前言

CMD 和 ENTRYPOINT 指令都是用来指定容器启动时运行的命令。

单从功能上来看,这两个命令几乎是重复的。单独使用其中的一个就可以实现绝大多数的用例。但是既然 doker 同时提供了它们,为了在使用中不至于混淆,本文试图把它们的用法理清楚。下面话不多说了,来一起看看详细的介绍吧。

exec 模式和 shell 模式

CMD 和 ENTRYPOINT 指令都支持 exec 模式和 shell 模式的写法,所以要理解 CMD 和 ENTRYPOINT 指令的用法,就得先区分 exec 模式和 shell 模式。这两种模式主要用来指定容器中的不同进程为 1 号进程。了解 linux 的朋友应该清楚 1 号进程在系统中的重要地位。笔者也在《在 docker 容器中捕获信号》一文中介绍过 1 号进程对容器中信号处理的重要性,感兴趣的朋友可以移步这里进行了解。下面我们通过 CMD 指令来学习 exec 模式和 shell 模式的特点。

exec 模式

使用 exec 模式时,容器中的任务进程就是容器内的 1 号进程,看下面的例子:

FROM ubuntuCMD [ "top" ]
本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/fwq/web/6795.html
上一篇Dockerfile中multi-stage(多阶段构建)详解
下一篇 教你如何修改Linux远程登录欢迎提示信息
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部