如何启动已停止的 Docker 容器

DockerDockerBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

Docker 容器已成为现代软件开发和部署的重要组成部分。在本教程中,我们将指导你完成重启已停止的 Docker 容器的过程,确保你的应用程序保持可用并响应迅速。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker/ContainerOperationsGroup -.-> docker/start("Start Container") docker/ContainerOperationsGroup -.-> docker/stop("Stop Container") docker/ContainerOperationsGroup -.-> docker/restart("Restart Container") subgraph Lab Skills docker/start -.-> lab-411606{{"如何启动已停止的 Docker 容器"}} docker/stop -.-> lab-411606{{"如何启动已停止的 Docker 容器"}} docker/restart -.-> lab-411606{{"如何启动已停止的 Docker 容器"}} end

Docker 容器简介

Docker 是一个强大的开源平台,使开发者能够在容器化环境中构建、部署和运行应用程序。容器是轻量级、独立且可执行的软件包,包含运行应用程序所需的一切,包括代码、运行时环境、系统工具和库。

Docker 容器为应用程序提供了一致且可预测的环境,确保无论底层基础设施如何,应用程序都能以相同方式运行。这使得开发、测试和部署应用程序变得更加容易,并且可以根据需要轻松扩展或缩减应用程序规模。

要开始使用 Docker,你首先需要在系统上安装 Docker 引擎。这可以通过遵循适用于你操作系统(如 Ubuntu 22.04)的官方安装指南来完成。安装完成后,你可以使用 docker 命令行工具来管理你的容器。

以下是一个使用 docker run 命令创建并运行一个简单 Docker 容器的示例:

$ docker run -it ubuntu:22.04 /bin/bash

此命令将从 Docker Hub 镜像仓库拉取 Ubuntu 22.04 镜像,基于该镜像创建一个新容器,并在容器内启动一个 Bash shell。然后,你可以使用 Bash shell 与容器进行交互并运行你的应用程序。

总体而言,Docker 容器为开发、部署和管理应用程序提供了强大且灵活的方式,使得在不同系统和平台上确保一致且可靠的环境变得更加容易。

停止和重启 Docker 容器

停止 Docker 容器

要停止正在运行的 Docker 容器,你可以使用 docker stop 命令,后跟容器的 ID 或名称。例如:

$ docker stop my-container

这将优雅地停止容器,使其在关闭前执行任何必要的清理任务。

如果你需要强制容器立即停止,可以改用 docker kill 命令:

$ docker kill my-container

这将立即终止容器的主进程,不允许其执行任何清理操作。

重启 Docker 容器

要重启已停止的 Docker 容器,可以使用 docker start 命令,后跟容器的 ID 或名称。例如:

$ docker start my-container

这将使用容器停止时的相同配置和状态启动它。

如果你需要重启正在运行的容器,可以使用 docker restart 命令:

$ docker restart my-container

这将停止容器,然后再次启动它。

你还可以使用 docker run 命令来创建并启动一个新容器。如果你尝试启动的容器已经存在,Docker 将启动现有容器,而不是创建一个新容器。

通过了解如何停止和重启 Docker 容器,你可以有效地管理应用程序的生命周期,并确保它们按预期运行。

实践:重启已停止的 Docker 容器

在本节中,我们将逐步介绍重启已停止的 Docker 容器的步骤。

步骤 1:创建一个 Docker 容器

首先,让我们基于 Ubuntu 22.04 镜像创建一个新的 Docker 容器:

$ docker run -d --name my-container ubuntu:22.04 /bin/bash -c "while true; do echo 'LabEx 很棒!'; sleep 5; done"

此命令将创建一个名为 my-container 的新容器,并运行一个简单的脚本,该脚本每 5 秒打印一次“LabEx 很棒!”。

步骤 2:停止容器

现在,让我们停止正在运行的容器:

$ docker stop my-container

步骤 3:重启容器

要重启已停止的容器,请使用 docker start 命令:

$ docker start my-container

这将再次启动容器,你应该会看到“LabEx 很棒!”的消息打印到控制台。

验证容器状态

你可以使用 docker ps 命令列出所有正在运行的容器,使用 docker ps -a 命令列出所有容器,包括已停止的容器。

$ docker ps -a
CONTAINER ID   IMAGE         COMMAND                  CREATED         STATUS                     PORTS     NAMES
9e5a4d9a1a2f   ubuntu:22.04  "/bin/bash -c 'while t…"  2 分钟前       已启动 9 秒                                 my-container

如你所见,my-container 现在处于“已启动”状态,表明它已成功重启。

通过遵循这些步骤,你已经学会了如何重启已停止的 Docker 容器。这些知识在管理基于 Docker 的应用程序的生命周期时将很有用。

总结

通过遵循本教程中概述的步骤,你将学习如何轻松地启动已停止的 Docker 容器并恢复应用程序的运行。这些知识将帮助你有效地管理基于 Docker 的基础设施,并保持部署的可靠性。