Docker容器生命周期相关命令及实践详解

 更新时间:2025年11月24日 11:01:05   作者:Stay Passion  
Docker容器生命周期管理是Docker平台中的一项关键功能,它涉及对容器的创建、运行、监控以及销毁等各个阶段的操作,这篇文章主要介绍了Docker容器生命周期相关命令及实践详解的相关资料,需要的朋友可以参考下

前言

Docker 容器具有完整的生命周期状态,从创建到销毁,每个阶段都有其特定的作用和命令支持。

一、生命周期状态说明

  • Created(已创建):容器已创建但尚未运行。

  • Running(运行中):容器正在运行,执行进程活跃。

  • Paused(暂停):容器进程被挂起,暂时停止调度。

  • Stopped/Exited(已停止/退出):容器运行完毕或被手动停止。

  • Dead(死掉):异常中止或资源清理失败时的状态。

二、生命周期相关命令

  • 创建容器(但不启动):

    docker create --name mycontainer nginx
    
  • 启动容器:

    docker start mycontainer
    
  • 运行容器(创建 + 启动):

    docker run -d --name mycontainer nginx
    
  • 暂停容器:

    docker pause mycontainer
    
  • 恢复容器:

    docker unpause mycontainer
    
  • 停止容器:

    docker stop mycontainer
    
  • 杀死容器(强制终止):

    docker kill mycontainer
    
  • 删除容器:

    docker rm mycontainer
    

三、特定场景应用

  • CI/CD 构建测试场景

    • 每次构建自动创建运行一个新容器,运行测试脚本后销毁。

    • 使用 --rm 参数运行容器,自动清理资源:

      docker run --rm myapp:test ./run_tests.sh
      
  • 定时任务中使用暂停与恢复

    • 每日定时处理任务,任务完成后挂起,节省资源:

      docker pause job-container
      docker unpause job-container
      
  • 自动重启容器服务场景

    • 使用 --restart unless-stopped 参数保证异常中容器恢复:

      docker run -d --restart unless-stopped nginx
      

五、脚本化管理实践

1. 批量停止所有运行中的容器

for id in $(docker ps -q); do
  docker stop $id
done

2. 批量删除已退出容器

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

3. 容器状态检查脚本

#!/bin/bash
for name in $(docker ps -a --format '{{.Names}}'); do
  status=$(docker inspect -f '{{.State.Status}}' $name)
  echo "$name 状态: $status"
done

六、总结

理解 Docker 容器的生命周期是高效管理容器化应用的基础。通过合理控制生命周期状态,可实现自动化部署、运维和故障恢复。结合特定场景和脚本工具,能大大提升操作效率与系统可靠性。

到此这篇关于Docker容器生命周期相关命令及实践的文章就介绍到这了,更多相关Docker容器生命周期内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker镜像存储overlayfs的使用

    Docker镜像存储overlayfs的使用

    这篇文章主要介绍了Docker镜像存储overlayfs的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • Docker安装及阿里云镜像加速器的配置方法

    Docker安装及阿里云镜像加速器的配置方法

    这篇文章主要介绍了Docker安装及阿里云镜像加速器配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • Docker镜像优化打包速度思考

    Docker镜像优化打包速度思考

    本文主要介绍了Docker镜像优化打包速度思考,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • Docker安装MySQL镜像实战分享

    Docker安装MySQL镜像实战分享

    这篇文章主要给大家分享了Docker安装MySQL镜像实战,让大家更深入的了解容器的使用场景,文章通过图文结合的方式给大家介绍的非常详细,需要的朋友可以参考下
    2024-04-04
  • docker remote api一键TLS加密的实现

    docker remote api一键TLS加密的实现

    本文主要介绍了docker remote api一键TLS加密的实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • docker安装nacos并配置文件持久化方式

    docker安装nacos并配置文件持久化方式

    这篇文章主要介绍了docker安装nacos并配置文件持久化方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-06-06
  • 聊聊kubernetes1.20用containerd替换docker(shim)的问题

    聊聊kubernetes1.20用containerd替换docker(shim)的问题

    这篇文章主要介绍了kubernetes1.20用containerd替换docker(shim),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • docker常用命令解读之volume篇

    docker常用命令解读之volume篇

    这篇文章主要介绍了docker常用命令解读之volume篇说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Docker自定义镜像上传至阿里云的实现

    Docker自定义镜像上传至阿里云的实现

    本文主要介绍了Docker自定义镜像上传至阿里云的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-04-04
  • 在Dockerfile中copy和add的区别及说明

    在Dockerfile中copy和add的区别及说明

    COPY和ADD都是Dockerfile中用于文件复制的命令,但COPY仅用于本地文件或目录的复制,不支持自动解压缩;而ADD除了复制本地文件或目录外,还支持解压缩和从URL下载文件,在一般情况下,建议使用COPY命令
    2025-03-03

最新评论