备份和还原数据
预计阅读时间:2分钟
您可以使用以下过程保存和还原图像和容器数据。例如,重置VM磁盘或将Docker环境移至新计算机。
保存数据
-
如果您的容器包含必须备份的数据,请使用将这些容器提交到映像
docker container commit
。提交容器会将容器文件系统更改和某些容器配置(标签,环境变量,命令/入口点)存储为本地映像。请注意,环境变量可能包含敏感信息,例如密码或代理身份验证,因此在将生成的映像推送到注册表时应格外小心。
还要注意,附加到容器的卷上的文件系统更改未包含在映像中,必须单独备份(请参阅下面的步骤3)。
有关使用此命令的详细信息,请参阅Docker Engine命令行参考部分中的
docker container commit
页面。我应该备份我的容器吗?
如果您使用卷或绑定挂载来存储容器数据,则可能不需要备份容器,但是 如果要重新创建容器,请确保记住创建容器时使用的选项或使用Docker Compose文件。重新安装后,您的容器具有相同的配置。
-
使用
docker push
推你在本地建立并要保留到任何图像泊坞枢纽注册表。 对于不应公开访问的图像,请确保将存储库的可见性配置为“私有”。 有关使用此命令的详细信息,请参阅Docker Engine命令行参考部分中的docker push
页面。或者,用于
docker image save -o images.tar image1 [image2 ...]
将要保留的任何图像保存到本地tar文件中。有关使用此命令的详细信息,请参阅Docker Engine命令行参考部分中的docker image save
页面。 -
如果使用命名卷 存储容器数据(例如数据库),请参考 “存储”部分中的“ 备份,还原或迁移数据卷”页面。
备份数据后,您可以卸载当前版本的Docker Desktop并安装其他版本(Windows macOS,或将Docker Desktop重置为出厂默认值)。
恢复数据
-
使用
docker pull
还原图像您在“第2步”推到泊坞枢纽 在保存您的数据部分如果您将图像备份到本地tar文件,请用于
docker image load -i images.tar
还原以前保存的图像。有关使用此命令的详细信息,请参阅Docker Engine命令行参考部分中的
docker image load
页面。 - 请参阅 “存储”部分中的“备份,还原或迁移数据卷”页面以还原卷数据。
- 根据需要使用
docker run
或Docker Compose重新创建容器。