![每天5分钟玩转Docker容器技术](https://wfqqreader-1252317822.image.myqcloud.com/cover/492/26943492/b_26943492.jpg)
上QQ阅读APP看书,第一时间看更新
4.2 stop/start/restart容器
通过docker stop可以停止运行的容器,如图4-15所示。
![](https://epubservercos.yuewen.com/F0C748/15367245605318506/epubprivate/OEBPS/Images/figure_0073_0001.jpg?sign=1739104267-SyJIaXzaUupOeSfnc9cess4E1tIfnc4b-0-3c5dff1b2ac16d934c80c9bb952fa84b)
图4-15
容器在docker host中实际上是一个进程,docker stop命令本质上是向该进程发送一个SIGTERM信号。如果想快速停止容器,可使用docker kill命令,其作用是向容器进程发送SIGKILL信号,如图4-16所示。
![](https://epubservercos.yuewen.com/F0C748/15367245605318506/epubprivate/OEBPS/Images/figure_0073_0002.jpg?sign=1739104267-GxxYg2PFvTFY6hlCwqi1mTtZHSqfuGO6-0-da120e9bd391f91e0a675202169b90f7)
图4-16
对于处于停止状态的容器,可以通过docker start重新启动,如图4-17所示。
![](https://epubservercos.yuewen.com/F0C748/15367245605318506/epubprivate/OEBPS/Images/figure_0073_0003.jpg?sign=1739104267-twflNlNok2MReGDCorqpG5URxUOlX9ex-0-66a20a36a07f3ff254cc0734158745e0)
图4-17
docker start会保留容器的第一次启动时的所有参数。
docker restart可以重启容器,其作用就是依次执行docker stop和docker start。
容器可能会因某种错误而停止运行。对于服务类容器,我们通常希望在这种情况下容器能够自动重启。启动容器时设置 --restart就可以达到这个效果,如图4-18所示。
![](https://epubservercos.yuewen.com/F0C748/15367245605318506/epubprivate/OEBPS/Images/figure_0073_0004.jpg?sign=1739104267-lWbMLM5GqU78TtK1RLDtQqQJwc1dp0mX-0-321ad78ce6ba0419d41594648ba8bdf4)
图4-18
--restart=always意味着无论容器因何种原因退出(包括正常退出),都立即重启;该参数的形式还可以是 --restart=on-failure:3,意思是如果启动进程退出代码非0,则重启容器,最多重启3次。