docker容器的状态有哪几种

发布时间 - 2022-05-11 00:00:00    点击率:
容器状态有7种:1、“created”,表示已创建;2、“restarting”,表示重启中;3、“running”,表示运行中;4、“removing”,表示迁移中;5、“paused”,表示暂停状态;6、“exited”,表示停止等等。

本教程操作环境:linux5.9.8系统、docker-1.13.1版、Dell G3电脑。

Docker容器的七种状态

docker下查看所有容器状态:

docker ps -a

返回的内容中,有一个字段是STATUS。

STATUS: 容器状态,有7种:

created(已创建)
restarting(重启中)
running(运行中)
removing(迁移中)
paused(暂停)
exited(停止)
dead(死亡)

这些状态中,最重要和常见的是除了restarting(重启中)和removing(迁移中)之外的五个状态,下面基本上网络上大部分的容器生命周期图都只包含五个状态:created(已创建),running(运行中),paused(暂停),exited(停止),dead(死亡)。

最常见的一种,当某容器因为某些原因变成exited状态时,可以使用start重新启动,例如:当运行时,提示这个容器未在运行,同时使用docker ps时没有显示出该容器

随后,想要重新新建一个容器,发现提示之前创建的容器其实还在,使用docker ps -a查看所有容器,看到:其实是处于exited状态

随后,使用docker start OCR重新启动了这个容器,检查了一下,里面的东西还是都在的。

类似exited(停止)

UP还在运行中(running)

另外,如果想知道这些状态,最简单的方式是,docker --help,返回的信息中,可以看到:

# 用来创建容器
create      Create a new container
# 在一个运行状态的容器中执行命令
exec        Run a command in a running container
# 杀死运行中的容器
kill        Kill one or more running containers
# 让容器暂停
pause       Pause all processes within one or more containers
# 恢复容器
unpause     Unpause all processes within one or more containers
# 重启容器
restart     Restart one or more containers
# 新建并初始化一个容器(注意 是一个新的容器)
 run         Run a command in a new container
# 启动一个被停止的容器
 start       Start one or more stopped containers
# 暂停运行中的容器
stop        Stop one or more running containers

扩展知识:容器生命周期

可以谷歌 container lifecycle去看看相关的内容,主要搜图,可以看到有很多图,就像进程的生命周期一样。

主要反映了created(已创建),running(运行中),paused(暂停),exited(停止),dead(死亡)这五个状态的一个变化关系。

下面这个图的started就约等于running。

下面这个图的stopped就约等于exited


源自: Docker Container Lifecycle Management: Create, Run, Pause, Stop And Delete


源自:docker基本命令


源自:docker命令图谱


源自:Docker系列03—Docker 基础入门
其实上面这个图最初应该是来自:
源自:Docker Internals-A Deep pe Into Docker For Engineers Interested In The Gritty Details.

参考:

  • Docker Container Lifecycle Management: Create, Run, Pause, Stop And Delete
  • Introduction to the Docker Life Cycle 这个文章的中文翻译:
  • 知乎文章:Docker生命周期简介
  • 知乎文章:Docker生命周期

推荐学习:《docker视频教程》


# docker  # 重启  # 还在  # 可以看到  # 的是  # 是一个  # 约等于  # 就像  # 都在  # 有很多  # 最重要 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何用腾讯建站主机快速创建免费网站?  Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践  零服务器AI建站解决方案:快速部署与云端平台低成本实践  如何在腾讯云服务器上快速搭建个人网站?  Laravel Debugbar怎么安装_Laravel调试工具栏配置指南  JavaScript如何操作视频_媒体API怎么控制播放  微信推文制作网站有哪些,怎么做微信推文,急?  Laravel用户密码怎么加密_Laravel Hash门面使用教程  JS碰撞运动实现方法详解  如何解决hover在ie6中的兼容性问题  如何用AI帮你把自己的生活经历写成一个有趣的故事?  油猴 教程,油猴搜脚本为什么会网页无法显示?  如何为不同团队 ID 动态生成多个独立按钮  如何实现建站之星域名转发设置?  Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践  如何快速生成ASP一键建站模板并优化安全性?  太平洋网站制作公司,网络用语太平洋是什么意思?  lovemo网页版地址 lovemo官网手机登录  Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门  零基础网站服务器架设实战:轻量应用与域名解析配置指南  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  WordPress 子目录安装中正确处理脚本路径的完整指南  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  如何在阿里云虚拟服务器快速搭建网站?  Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程  Angular 表单中正确绑定输入值以确保提交与验证正常工作  Thinkphp 中 distinct 的用法解析  如何实现javascript表单验证_正则表达式有哪些实用技巧  制作企业网站建设方案,怎样建设一个公司网站?  Java垃圾回收器的方法和原理总结  简单实现Android验证码  网站制作软件有哪些,制图软件有哪些?  实现点击下箭头变上箭头来回切换的两种方法【推荐】  高防服务器如何保障网站安全无虞?  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  Swift中swift中的switch 语句  HTML 中动态设置元素 name 属性的正确语法详解  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  Laravel如何部署到服务器_线上部署Laravel项目的完整流程与步骤  如何在建站宝盒中设置产品搜索功能?  Swift中循环语句中的转移语句 break 和 continue  Laravel如何实现API资源集合?(Resource Collection教程)  Laravel怎么实现支付功能_Laravel集成支付宝微信支付  Laravel项目怎么部署到Linux_Laravel Nginx配置详解  JS实现鼠标移上去显示图片或微信二维码  Firefox Developer Edition开发者版本入口  桂林网站制作公司有哪些,桂林马拉松怎么报名?  php在windows下怎么调试_phpwindows环境调试操作说明【操作】  Laravel定时任务怎么设置_Laravel Crontab调度器配置  如何用wdcp快速搭建高效网站?