Docker入门之-容器(二)

容器的常规操作


stop/start/restart 容器

容器在 docker host 中实际上是一个进程,docker stop 命令本质上是向该进程发送一个 SIGTERM 信号。如果想快速停止容器,可使用 docker kill 命令,其作用是向容器进程发送 SIGKILL 信号

通过 docker stop 可以停止运行的容器

 如果想快速停止容器,可使用 docker kill 命令

 对于处于停止状态的容器,可以通过 docker start 重新启动

 docker restart 可以重启容器,其作用就是依次执行 docker stop 和docker start

容器可能会因某种错误而停止运行,对于服务类容器,我们通常希望在这种情况下容器能够自动重启,启动容器时设置 --restart 就可以达到这个效果

--restart=always 意味着无论容器因何种原因退出(包括正常退出),就立即重启

参数的形式还可以是 --restart=on-failure:3,意思是如果启动进程退出代码非0,则重启容器,最多重启3次;

特别需要注意的是:只有当容器的启动进程 退出 时,--restart 才生效;

退出包括正常退出或者非正常退出,这里举了两个例子:启动进程正常退出或发生 OOM,此时 docker 会根据 --restart 的策略判断是否需要重启容器,但如果容器是因为执行 docker stop 或docker kill 退出,则不会自动重启;

pause/unpause 容器

有时我们只是希望暂时让容器暂停工作一段时间,比如要对容器的文件系统打个快照,或者 dcoker host 需要使用 CPU,这时可以执行 docker pause

处于暂停状态的容器不会占用 CPU 资源,直到通过 docker unpause 恢复运行

 

 删除容器

使用 docker 一段时间后,host 上可能会有大量已经退出了的容器,这些容器依然会占用 host 的文件系统资源,如果确认不会再重启此类容器,可以通过 docker rm 删除;

docker rm 一次可以指定多个容器,如果希望批量删除所有已经退出的容器,可以执行如下命令:

docker rm -v $(docker ps -aq -f status=exited)

顺便说一句:docker rm 是删除容器,而 docker rmi 是删除镜像;

创建容器

docker create 创建的容器处于 Created 状态

通过docker ps -a查看

 通过docker start  启动容器

 最后的最后,借用cloudMan的一张图来讨论了容器各种状态之间是如何转换的:

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值