一、迁移前的准备工作
-
确认版本兼容性
- 检查源电脑的 Docker Desktop 版本是否为 4.30 或更高。若版本较旧(如 4.30 之前),需分别处理
docker-desktop
和docker-desktop-data
两个组件。 - 确保目标电脑的操作系统架构(Intel/AMD 或 ARM)与源电脑一致,避免兼容性问题。
- 检查源电脑的 Docker Desktop 版本是否为 4.30 或更高。若版本较旧(如 4.30 之前),需分别处理
-
关闭 Docker 服务
在源电脑上执行以下命令,确保所有容器和 WSL 实例已停止:wsl --shutdown
二、导出 Docker Desktop 环境
-
导出完整环境(适用于 4.30+ 版本)
使用wsl --export
命令将整个 Docker Desktop 环境打包为.tar
文件:wsl --export docker-desktop "D:\backup\docker-desktop.tar"
- 若需迁移镜像存储位置(如从 C 盘迁移到其他盘),需额外导出
docker-desktop-data
:wsl --export docker-desktop-data "D:\backup\docker-desktop-data.tar"
- 若需迁移镜像存储位置(如从 C 盘迁移到其他盘),需额外导出
-
备份配置文件(可选)
若需迁移自定义配置(如代理设置、镜像加速器),可复制以下文件:%USERPROFILE%\.docker\desktop\config.json
%USERPROFILE%\.wslconfig
三、目标电脑的迁移操作
-
卸载旧实例(如有必要)
若目标电脑已安装 Docker Desktop,需先注销旧实例:wsl --unregister docker-desktop wsl --unregister docker-desktop-data # 仅限 4.30 之前的版本
-
安装 Docker Desktop
从 官网 下载最新版安装包,完成基础安装。 -
导入备份文件
将导出的.tar
文件导入到目标电脑的默认 WSL 路径(通常为C:\Program Files\Docker\Docker\Resources
):wsl --import docker-desktop "C:\Program Files\Docker\Docker\Resources" "D:\backup\docker-desktop.tar"
- 若迁移了镜像存储位置,需额外导入
docker-desktop-data
:wsl --import docker-desktop-data "C:\Users\<用户名>\AppData\Local\Docker\wsl\data" "D:\backup\docker-desktop-data.tar"
- 若迁移了镜像存储位置,需额外导入
四、调整存储路径(可选)
-
修改镜像存储位置
- 在 Docker Desktop 的 Settings → Resources → Advanced 中,自定义镜像和容器的存储路径(如
D:\docker-data
)。 - 若需通过配置文件修改,编辑
%USERPROFILE%\.wslconfig
,添加:[wsl2] memory=4GB # 内存限制 processors=4 # CPU 核心数 swap=0 # 交换空间 localhostForwarding=true
- 在 Docker Desktop 的 Settings → Resources → Advanced 中,自定义镜像和容器的存储路径(如
-
迁移 WSL 发行版(高级)
若需将整个 WSL 环境迁移到其他盘,可使用wsl --export
和wsl --import
重新部署。
五、验证与测试
-
启动 Docker Desktop
重启服务并验证镜像、容器是否正常加载:wsl --list -v # 检查状态 docker ps -a # 查看容器
-
检查存储路径
确认镜像和容器数据已存储在新位置:Get-ChildItem "D:\docker-data\wsl\data\ext4.vhdx"
常见问题解决
- 版本冲突:若目标电脑的 Docker Desktop 版本低于 4.30,需手动合并
docker-desktop
和docker-desktop-data
的导出文件。 - 空间不足:确保目标磁盘有足够空间(建议预留 20GB 以上)。
- 网络配置:若迁移后容器无法联网,检查防火墙或代理设置。
通过以上步骤,可完整迁移 Docker Desktop 及其数据到新电脑。若需进一步优化存储,可参考 中的迁移策略。