如何备份和恢复 Docker 容器?

dockeroperating systemopen source更新于 2026/2/10 7:22:17

Docker 使我们能够自动化构建和部署应用程序的过程。它还允许我们创建一个打包的环境来运行应用程序,使其易于移植和轻量级,同时还允许我们跟踪版本。所有这些都可以通过 Docker 容器实现。它有助于使应用程序独立于平台。

假设我们的机器中正在运行一个 Docker 容器,并且我们希望对该容器进行快照或备份,以便在发生任何紧急情况时,如果我们想要回滚更改或使用先前的时间戳执行容器,我们可以借助存储的备份轻松地完成这些操作。因此,备份和恢复 Docker 容器可以成为项目的重要组成部分。

在本文中,我们将了解如何借助某些命令备份和恢复 Docker 容器。我们还需要注意,如果容器使用单独的数据卷,本文中用于备份 Docker 容器的流程将不起作用。要备份使用单独数据卷的 Docker 容器,我们需要为每个数据卷创建单独的备份。

  • 备份 Docker 容器

首先,为了备份 Docker 容器,我们需要该容器的容器 ID。我们将使用 ps 命令获取所有正在运行的容器的容器 ID,并复制我们需要备份的容器。

查看以下命令执行此操作。

sudo docker ps −a

之后,复制要为其创建备份的 Docker 容器的容器 ID。要创建 Docker 容器的快照,我们使用 docker commit 命令。 Docker 提交命令的格式为 −

sudo docker commit −p <CONTAINER_ID> <BACKUP_NAME>

示例

sudo docker commit −p 5c2f44fbb535 backup-ubuntu

要将镜像以 tar 文件形式保存在本地计算机中,您可以使用此命令。

sudo docker save −o ∽/backup−ubuntu.tar backup−ubuntu

使用此命令检查已保存的 tar 文件。

sudo ls −l ∽/backup−ubuntu.tar

您也可以选择将镜像备份直接推送到 Docker 镜像仓库。请使用以下命令执行此操作。请将用户名替换为您的 Docker Hub 用户名。

sudo docker login
sudo docker push backup−ubuntu:tag
  • 恢复 Docker 容器

创建 Docker 容器备份后,如果您想恢复该容器以供使用,请按照以下步骤操作。

如果您已将 tar 文件保存在主机中,则可以使用 docker load 命令轻松将其恢复。使用以下命令执行此操作。

sudo docker load −i ∽/backup-ubuntu.tar

要确认镜像是否已成功恢复,您可以使用以下命令列出所有镜像。

sudo docker images

如果您已将备份的镜像推送到 docker registry,则可以使用以下命令将其拉回。

sudo docker pull backup-ubuntu:tag

在本地计算机上恢复镜像后,您可以使用 docker run 命令运行已恢复的 docker 镜像的新实例。您可以使用以下命令执行此操作。

sudo docker run −ti backup−ubuntu:tag

在上文中,我们了解了如何备份和恢复 Docker 容器。如果您想将主机上运行的 Docker 容器迁移到另一台机器,可以结合使用备份和恢复这两个过程。如果您已创建镜像备份并将其推送到 Docker 镜像仓库,则只需登录目标机器并拉取备份镜像即可。如果您已创建用于备份容器的 tar 文件,则可以将 tar 文件复制并粘贴到目标机器上,然后使用 docker load 命令加载镜像,再运行 docker run 命令执行容器。


相关文章