14 Docker容器管理之容器的生命周期

在上一篇中,我们探讨了Docker镜像的构建与优化,了解到如何创建和管理镜像,确保我们的应用程序能够高效地打包和发行。在这一篇中,我们将深入理解Docker容器的生命周期,包括容器的创建、运行、暂停、恢复和删除等各个阶段。抓住容器生命周期的每个环节,能够使我们更好地管理和维护运行中的应用程序。

理解Docker容器的生命周期

Docker容器的生命周期主要可分为以下几个阶段:

  1. 创建 - 根据镜像生成容器。
  2. 运行 - 启动并执行容器。
  3. 暂停 - 暂停运行中的容器。
  4. 恢复 - 从暂停状态恢复。
  5. 停止 - 停止正在运行的容器。
  6. 删除 - 删除容器及其相关数据。

我们将逐步通过命令示例和案例来详细讲解这些生命周期阶段。

1. 创建容器

使用docker create命令创建一个新容器,这个容器基于指定的镜像生成。

1
docker create --name my_container nginx

在这个例子中,我们创建了一个名为my_container的容器,基于nginx镜像。但是请注意,此时容器并没有运行,我们只是定义了容器的设置。

2. 运行容器

要运行刚刚创建的容器,可以使用docker start命令。

1
docker start my_container

但通常我们会在创建的同时直接运行容器。因此更常用的是:

1
docker run --name my_running_container -d nginx

这里-d表示以“后台模式”运行容器。my_running_container是我们新创建并运行的容器名称。

3. 暂停容器

你可以使用docker pause命令暂停正在运行的容器:

1
docker pause my_running_container

当容器被暂停后,它的所有进程将被挂起,但容器的状态和数据仍然保留,这对于短暂的资源管理很有用。

4. 恢复容器

要恢复一个被暂停的容器,使用docker unpause命令:

1
docker unpause my_running_container

这将使得被暂停的容器继续执行。

5. 停止容器

要停止一个正在运行的容器,可以使用docker stop命令:

1
docker stop my_running_container

当执行此命令时,Docker会给容器中的所有进程发送SIGTERM信号,尝试优雅地停止它。如果容器在超时时间内未能停止,可以通过SIGKILL强制终止。

6. 删除容器

最后,当你不再需要一个容器时,可以通过docker rm命令将其删除:

1
docker rm my_running_container

请注意,只有已经停止的容器才能被删除。如果你希望在停止的同时删除容器,可以执行:

1
docker rm -f my_running_container

这个命令会强行停止再删除容器。

实际案例:创建和管理Web应用容器

考虑一个用nginx搭建简单web服务的情景,我们将按步骤创建和管理容器。

  1. 创建并启动容器

    1
    docker run -d --name my_nginx -p 8080:80 nginx

    这里我们创建并启动了nginx容器,并将主机的8080端口映射到容器的80端口。

  2. 检查容器状态

    使用docker ps命令可以查看运行中的容器:

    1
    docker ps
  3. 暂停并恢复容器

    暂停容器:

    1
    docker pause my_nginx

    恢复容器:

    1
    docker unpause my_nginx
  4. 停止并删除容器

    停止容器:

    1
    docker stop my_nginx

    删除容器:

    1
    docker rm my_nginx

小结

在本篇中,我们深入探讨了Docker容器的生命周期,涵盖了从创建到删除容器的各个阶段。理解这些生命周期阶段,不仅可以帮助我们管理Docker应用程序,还可以优化系统资源的使用。未来我们将继续探讨容器的启动与停止,希望你在Docker的学习旅程中能够更加得心应手!

14 Docker容器管理之容器的生命周期

https://zglg.work/docker-zero/14/

作者

AI免费学习网(郭震)

发布于

2024-08-15

更新于

2024-08-16

许可协议

分享转发

交流

更多教程加公众号

更多教程加公众号

加入星球获取PDF

加入星球获取PDF

打卡评论