启动容器就是启动主进程,但有些时候,启动主进程前,需要一些准备工作。比如MySQL类的数据库,可能需要一些数据库配置、初始化的工作,这些工作要在最终的MySQL服务器运行之前解决。这些操作,可以在制作镜像时通过在Dockerfile文件中设置ENTRYPOINT或CMD来完成,如下所示的Dockerfile中设置了ENTRYPOINT ["top", "-b"]命令,其将会在容器启动时执行。
FROM ubuntu ENTRYPOINT ["top", "-b"]
启动命令必须为容器镜像支持的命令,否则会导致容器启动失败。
在云容器实例中同样可以设置容器的启动命令,例如上面Dockerfile中的命令,只要在创建负载时配置容器的高级设置,先单击“添加”,输入“top”命令,再单击“添加”,输入参数“-b”,如下图所示。
由于容器引擎运行时只支持一条ENTRYPOINT命令,云容器实例中设置的启动命令会覆盖掉制作镜像时Dockerfile中设置的ENTRYPOINT和CMD命令,其规则如下表所示。
镜像 Entrypoint |
镜像CMD |
容器运行命令 |
容器运行参数 |
最终执行 |
---|---|---|---|---|
[touch] |
[/root/test] |
未设置 |
未设置 |
[touch /root/test] |
[touch] |
[/root/test] |
[mkdir] |
未设置 |
[mkdir] |
[touch] |
[/root/test] |
未设置 |
[/opt/test] |
[touch /opt/test] |
[touch] |
[/root/test] |
[mkdir] |
[/opt/test] |
[mkdir /opt/test] |
计算机科学大学生,一做web前端开发都是在本地部署项目,但最近要做一个分布式的...
Linux 内核热补丁可以修复正在运行的 linux 内核 是一种维持线上稳定性不可缺少...
本文转载自微信公众号「鱼鹰谈单片机」,作者鱼鹰Osprey。转载本文请联系鱼鹰谈...
案例背景 “人民日报的带货能力太强大了,昨晚一大波流量进来抢药,我们的服务器...
} dictEntry; hash算法 Redis使用MurmurHash2算法计算键的哈希值。 hash冲突 解...
一、背景 高精地图、高精采集车,是做地图和出行领域同学经常挂在嘴上的一些常用...
接口 get_app_revisions 参数 参数 类型 是否必须 描述 app_name string 是 App ...
企业选择web服务器租用的技巧 对于服务器的重要性相信很多站长都是了解的,服务...
11月26日,由工业和信息化部和广西壮族自治区人民政府共同主办,广西壮族自治区...
由于受到互联网上的病毒泛滥以及黑客的攻击的影响,现在的邮件服务器在安全防护...