容器(四)一张图搞懂容器所有操作【21】
(五)一张图搞懂容器所有操作
前面我们已经讨论了容器的各种操作,对容器的生命周期有了大致的理解,下面这张状态机很好地总结了容器各种状态之间是如何转换的 。
如果掌握了前面的知识,要看懂这张图应该不难。不过有两点还是需要补充一下:
-
可以先创建容器,稍后再启动。
root@cuiyongchao:/dockerfile# docker create httpd 751d726f3910d3c139f138c6456623160ccd148d47f82244118f418f829a22ef root@cuiyongchao:/dockerfile# docker start 751d726f3910d3c139f138c6456623160ccd148d47f82244118f418f829a22ef 751d726f3910d3c139f138c6456623160ccd148d47f82244118f418f829a22ef root@cuiyongchao:/dockerfile# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 751d726f3910 httpd "httpd-foreground" 24 seconds ago Up 7 seconds 80/tcp tender_kepler①
docker create创建的容器处于 Created 状态。②
docker start将以后台方式启动容器。docker run命令实际上是docker create和docker start的组合。 -
只有当容器的启动进程 退出时,
--restart才生效。
退出包括正常退出或者非正常退出。这里举了两个例子:启动进程正常退出或发生 OOM,此时 docker 会根据 --restart 的策略判断是否需要重启容器。但如果容器是因为执行 docker stop 或docker kill 退出,则不会自动重启。
浙公网安备 33010602011771号