当前位置: 首页 > news >正文

专业软件开发培训机构太原搜索引擎优化招聘信息

专业软件开发培训机构,太原搜索引擎优化招聘信息,游戏开发和网站开发那个有前景,wordpress 导入分类容器生命周期 下图显示了容器生命周期的简化状态。 CreatedRunningPausedStoppedDeleted 现在让我们逐一讨论容器生命周期的每个状态: 创建状态(Created) 这是容器生命周期的第一个状态,在这个阶段,容器被创建但…

容器生命周期

下图显示了容器生命周期的简化状态。
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • Created
  • Running
  • Paused
  • Stopped
  • Deleted

现在让我们逐一讨论容器生命周期的每个状态:

创建状态(Created)

这是容器生命周期的第一个状态,在这个阶段,容器被创建但尚未启动。

通过运行docker create命令,我们可以在指定的镜像上创建一个薄的可写层,并准备运行主进程(由 CMD 和/或 ENTRYPOINT 定义)。需要注意的是,在创建状态下,容器已经存在,但并没有开始执行。

例如,以下命令使用nginx:alpine镜像创建一个名为app1的容器:

docker create --name app1 nginx:alpine

如果创建成功,终端会打印出新容器的ID。

运行状态(Running)

顾名思义,运行状态表示容器正在主动运行。在这个阶段,主进程已经开始执行。对于已经创建或停止的容器,我们可以使用docker start命令来启动它。

例如,要启动之前创建的app1容器,我们可以运行:

docker start app1

如果你不想先创建再启动容器,可以直接使用docker run命令,这样可以同时完成这两个步骤。以下命令将在后台创建并启动一个名为app2的容器:

docker run -d --name app2 nginx:alpine

暂停状态(Paused)

在某些情况下,我们可能需要暂停正在运行的容器。可以使用docker pause命令来暂停指定容器中所有的进程。

暂停时,容器的状态保持完整,包括磁盘和内存的内容。

需要注意的是,暂停的容器并不知道自己已经被暂停。

要暂停app1,可以运行:

docker pause app1

要恢复暂停的容器,我们可以使用docker unpause命令:

docker unpause app1

停止状态(Stopped)

停止状态表示容器不再主动运行其主进程。在该状态下,容器的磁盘部分会保留下来,但内存部分会被清除。这是暂停状态和停止状态之间的主要区别。

容器可以通过四种主要方式停止:

  • 使用docker stop命令。
  • 使用docker kill命令。
  • 当主容器进程退出或完成时。
  • 遇到“内存不足异常”(OOME)时。

让我们分别讨论一下 这几种方式。

1. 使用docker stop命令

此命令非常简单:

docker stop app1

当执行此命令时,主容器进程会接收到一个 SIGTERM 信号,允许其安全地关闭。如果在默认的宽限期(通常为 10 秒)内进程没有结束,系统会强制发送一个 SIGKILL 信号,立即终止进程。

2. 使用docker kill命令

与docker stop不同,docker kill直接将SIGKILL信号发送到主容器进程:

docker kill app2

这意味着docker stop允许容器安全终止(在宽限期内),而则docker kill立即终止进程。docker kill还可以使用–signal或-s发送任何信号,而不仅仅是 SIGKILL。例如,发送 SIGINT 信号:

docker kill -s SIGINT app1
3. 当主进程退出/完成时

如果容器的主进程已退出或完成,则容器可以自动停止。

这可能是因为主进程遇到异常、中断,或者在某个时刻执行的任务完成(而不是像服务器那样无限循环)。例如:

docker run alpine echo "hi"

在此命令中,echo "hi"在 alpine 容器内执行,打印“hi”后立即退出,导致容器自动停止。

4. 当遇到“内存不足异常”(OOME)时

如果容器尝试使用超过系统可用内存的数量,可能会遇到内存不足异常(OOME)。在这种情况下,某些容器甚至 Docker 守护进程可能会被加载终止。为了避免这种情况,确保应用在拥有足够内存的主机上运行是非常重要的。可以通过以下命令限制容器的最大内存使用:

docker run -m 50m redis:alpine

通过这个命令,Redis容器的内存使用不会超过50MB,超出部分可能会导致OOME。

已删除状态(Deleted)

对于状态或停止状态的容器可以使用docker rm命令删除。这将导致与容器相关的所有数据被删除,包括进程、文件系统、卷和网络映射创建。例如,要删除已经停止的app1容器,可以运行:

docker rm app1

如果容器正在运行或暂停时尝试删除,会收到错误提示说明,容器需要先停止。如果您确定要强制删除正在运行的容器,可以使用:

docker rm -f app1

容器生命周期高级部分

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

http://www.hkea.cn/news/481083/

相关文章:

  • 网站建设销售工作职责seo平台怎么样
  • 免费的网站给一个百度seo优化服务项目
  • 现代广告创意设计郑州百度网站优化排名
  • 兰州网站建设哪家专业谷歌seo网站推广
  • 崇信门户网站留言回复上优化seo
  • 网站建设费用有哪些站长工具搜索
  • 云主机能干什么独立站seo怎么做
  • 苏州专业网站建设设计公司免费发布推广信息的b2b
  • 空间 两个网站网络推广培训班
  • 零基础学做网站推广公司简介
  • 公司做网站最好引擎搜索器
  • 济南手工网站建设北京百度seo服务
  • 网站建设原创百度seo官网
  • 徐州企业网站建设衡阳seo服务
  • 网站自然排名优化seo专员是什么职业
  • 视频网站制作广告代理公司
  • wordpress主题域名授权密钥生成镇海seo关键词优化费用
  • 北京东直门+网站建设汕头seo外包平台
  • 长沙 做网站企业网络组网设计
  • 北京哪家做网站优化产品seo基础优化
  • 招商加盟网站建设百度网址安全检测
  • 知名做网站费用2024年将爆发新瘟疫
  • 河北省城乡与建设厅网站企业关键词排名优化哪家好
  • 网站开发合同协议百度百科推广费用
  • 推荐黄的网站产品推广策划
  • 济南网站建设设计公司线上运营推广
  • 小清新 wordpressseo排名是什么意思
  • 从客户—管理者为某一公司做一份电子商务网站管理与维护的方案自媒体是如何赚钱的
  • 黑龙江住房和城乡建设厅网站首页每日精选12条新闻
  • 做网站工作都包括什么企业网站搭建