卸载Docker时保留本地镜像和容器方式

 更新时间:2024年11月27日 09:59:59   作者:骑上单车去旅行  
文章讲述了如何在Linux、Windows和Mac系统中备份和恢复Docker镜像和容器,备份过程包括列出本地镜像、保存镜像和导出容器,恢复过程则涉及卸载Docker、重新安装Docker以及使用dockerload和dockerimport命令恢复镜像和容器

1. 在Linux系统中(以Ubuntu和CentOS为例)

备份镜像和容器相关数据

镜像备份

首先,列出本地所有的镜像并记录它们的信息,包括镜像名称、标签和ID。

可以使用docker images命令查看。然后使用docker save命令来保存镜像。

例如,要保存名为myimage,标签为latest的镜像,可以使用以下命令:

docker save -o myimage_latest.tar myimage:latest

其中-o选项指定输出文件的名称,myimage_latest.tar是保存后的文件名,可以根据需要修改。

如果有多个镜像需要保存,可以依次对每个镜像执行此操作。

容器备份(可选)

如果要备份容器,可以先使用docker export命令。

例如,对于一个名为mycontainer的容器,使用以下命令将其导出为一个tar文件:

docker export -o mycontainer.tar mycontainer

不过要注意:

docker export导出的是容器的文件系统快照,不包括容器的元数据(如容器的启动命令、环境变量等)。

如果希望完整备份容器的状态,包括元数据,可能需要考虑使用其他工具或者方法,如记录容器的创建参数并结合文件系统快照来进行备份。

卸载Docker

  • 按照常规的卸载步骤进行操作,如在Ubuntu中运行
sudo apt - get purge docker - ce docker - ce - cli containerd.io
  • 在CentOS中运行
sudo yum remove docker - ce docker - ce - cli containerd.io
  • 来卸载Docker引擎和相关组件。

重新安装Docker后恢复镜像和容器(如果需要)

镜像恢复

在重新安装Docker后,使用docker load命令来恢复之前备份的镜像。

例如,对于之前备份的myimage_latest.tar文件,可以使用以下命令恢复:

docker load -i myimage_latest.tar

容器恢复(可选)

对于使用docker export备份的容器,在恢复镜像后,可以使用docker import命令来恢复容器。

例如,对于之前备份的mycontainer.tar文件,可以使用以下命令恢复:

docker import mycontainer.tar mynewcontainer:latest

不过,使用docker import恢复的容器与原来的容器在某些方面可能会有所不同,如容器的启动命令等可能需要重新设置,因为它只导入了文件系统内容。

2. 在Windows系统中

备份镜像和容器相关数据

镜像备份

在命令提示符(CMD)或PowerShell中,使用docker images命令查看本地镜像信息。然后使用docker save命令来保存镜像。

例如,对于名为myimage,标签为latest的镜像,运行以下命令:

docker save -o myimage_latest.tar myimage:latest

容器备份(可选)

虽然Windows系统下Docker容器是基于Hyper - V运行的,但同样可以使用docker export命令备份容器。

例如,对于名为mycontainer的容器,运行以下命令将其导出为tar文件:

docker export -o mycontainer.tar mycontainer

卸载Docker

  • 通过“控制面板”->“程序和功能”卸载Docker Desktop。

重新安装Docker后恢复镜像和容器(如果需要)

镜像恢复

在重新安装Docker后,在命令提示符或PowerShell中使用docker load命令恢复镜像。

例如,对于之前备份的myimage_latest.tar文件,运行以下命令:

docker load -i myimage_latest.tar

容器恢复(可选)

对于使用docker export备份的容器,在恢复镜像后,使用docker import命令恢复容器。

例如,对于之前备份的mycontainer.tar文件,运行以下命令:

docker import mycontainer.tar mynewcontainer:latest

3. 在Mac系统中

备份镜像和容器相关数据

镜像备份

在终端中使用docker images命令查看本地镜像信息,然后使用docker save命令保存镜像。

例如,对于名为myimage,标签为latest的镜像,运行以下命令:

docker save -o myimage_latest.tar myimage:latest

容器备份(可选)

使用docker export命令备份容器。

例如,对于名为mycontainer的容器,运行以下命令将其导出为tar文件:

docker export -o mycontainer.tar mycontainer

卸载Docker

  • 通过将“Docker Desktop”应用程序拖移到废纸篓来卸载。

重新安装Docker后恢复镜像和容器(如果需要)

镜像恢复

重新安装Docker后,在终端中使用docker load命令恢复镜像。

例如,对于之前备份的myimage_latest.tar文件,运行以下命令:

docker load -i myimage_latest.tar

容器恢复(可选)

对于使用docker export备份的容器,在恢复镜像后,使用docker import命令恢复容器。

例如,对于之前备份的mycontainer.tar文件,运行以下命令:

docker import mycontainer.tar mynewcontainer:latest

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • docker配置静态ip的实现示例

    docker配置静态ip的实现示例

    如果不配置会docker会自动分配ip地址给容器,但是每次重启后ip地址会改变,本文主要介绍了docker配置静态ip的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2023-12-12
  • 使用Docker run的选项以覆盖Dockerfile中的设置详解

    使用Docker run的选项以覆盖Dockerfile中的设置详解

    今天小编就为大家分享一篇关于使用Docker run的选项以覆盖Dockerfile中的设置详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • docker如何配置mysql主从复制

    docker如何配置mysql主从复制

    文章介绍了如何在CentOS 7上搭建一个MySQL集群,包括创建Docker环境、配置文件设置、创建和启动MySQL容器、设置远程访问以及配置主从同步
    2024-12-12
  • Docker PostgreSQL容器化部署方式

    Docker PostgreSQL容器化部署方式

    这篇文章主要介绍了如何部署和配置PostgreSQL数据库,包括使用Bitnami的PostgreSQL镜像、通过Docker和Docker Compose进行部署、配置网络和连接、设置同步复制、启用SSL/TLS加密以及使用LDAP认证等详细步骤
    2025-01-01
  • Linux Docker安装wordpress的方法详解教程

    Linux Docker安装wordpress的方法详解教程

    这篇文章主要介绍了Linux Docker安装wordpress的方法详解教程的相关资料,需要的朋友可以参考下
    2016-10-10
  • Docker 打包 K8s镜像的应用实例

    Docker 打包 K8s镜像的应用实例

    文章介绍了如何使用Docker打包和部署Kubernetes镜像,包括准备工作、创建Dockerfile、构建镜像、测试运行、推送镜像、Kubernetes部署文件示例、部署到Kubernetes等步骤,并提供了注意事项和最佳实践,感兴趣的朋友一起看看吧
    2025-03-03
  • 多云环境下的Docker部署策略实现

    多云环境下的Docker部署策略实现

    在多云环境下,Docker容器技术为应用程序的部署提供了高度的灵活性和可扩展性,本文就来介绍一下多云环境下的Docker部署策略实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • Docker中部署Redis集群与部署微服务项目的详细过程

    Docker中部署Redis集群与部署微服务项目的详细过程

    这篇文章主要介绍了Docker中部署Redis集群与部署微服务项目,主要包括使用docker部署的好处以及Docker与Kubernetes对比分析,需要的朋友可以参考下
    2022-06-06
  • docker 突然不能被外网访问的解决方案

    docker 突然不能被外网访问的解决方案

    这篇文章主要介绍了docker 突然不能被外网访问的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 私有云存储Minio Docker镜像无法启动,提示:Adding local Minio host to 'mc' configuration

    私有云存储Minio Docker镜像无法启动,提示:Adding local Minio

    使用Minio在本地搭建私有云存储时出现无法启动,查看日志频繁输出“Adding local Minio host to 'mc' configuration...”,然后停止了,本文给大家分享私有云存储Minio Docker镜像无法启动,提示:Adding local Minio host to 'mc' configuration,感兴趣的朋友一起看看吧
    2023-11-11

最新评论