前面我们已经讨论了容器的各种操作,对容器的生命周期有了大致的理解,下面这张状态机很好地总结了容器各种状态之间是如何转换的。
如果掌握了前面的知识,要看懂这张图应该不难。不过有两点还是需要补充一下:
-
可以先创建容器,稍后再启动。
①
docker create
创建的容器处于 Created 状态。
②docker start
将以后台方式启动容器。docker run
命令实际上是docker create
和docker start
的组合。 -
只有当容器的启动进程 退出 时,
--restart
才生效。
退出包括正常退出或者非正常退出。这里举了两个例子:启动进程正常退出或发生 OOM,此时 docker 会根据--restart
的策略判断是否需要重启容器。但如果容器是因为执行docker stop
或docker kill
退出,则不会自动重启。
好了,容器操作就讨论到这里,下一节我们将学习如何限制容器对资源的使用。