WSL:Windows Subsystem for Linux
wsl --install –d Ubuntu-22.04 wsl --list --online 查看商店支持的系统 wsl --list --verbose 查看本地已安装系统 wsl -l –v 列举子系统列表 wslconfig /list 查看默认子系统 wslconfig /setdefault Ubuntu-22.04 #设置默认子系统 wsl -d Ubuntu-22.04 # 进入指定容器 wsl #进入默认容器
wsl 版本查看: PS C:WINDOWSsystem32> wsl --version WSL 版本: 2.6.3.0 内核版本: 6.6.87.2-1 WSLg 版本: 1.0.71 MSRDC 版本: 1.2.6353 Direct3D 版本: 1.611.1- DXCore 版本: 10.0.26100.1--1435.ge-release Windows: 10.0.19045.6466
容器信息查看
# 容器信息存盘 for /f "tokens=*" %i in ('docker ps -a --format "{{.Names}}"') do docker inspect %i > "f:2026_wsl_docker_backup%i.json"
# 3. 查看容器目录(volume)映射情况: PS C:WINDOWSsystem32> docker ps -aq | ForEach-Object { docker inspect --format='{{.Name}} -> {{.Mounts}}' $_ } /tinyproxy -> [{volume 9d025df31e23faed09df75b5ffab5c67b740a7751dc6ab51c8a9 /var/lib/docker/volumes/9d025df31e23faed09df75b5ffab5c67b740a7751dc6ab51c8a9/_data /etc/tinyproxy local true }] /ros22 -> [{bind /mnt/d/docker/container/ros2/data /data true rprivate} {bind /run/desktop/mnt/host/wsl/docker-desktop-bind-mounts/Ubuntu-22.04/c94e8468ddf5c35b0bbbe4999c9bb5afe85d98d30aec9384c9eb1b47 /run/user/1000/pulse/native true rprivate}] /ros2 -> [{bind d:dockercontainer os2data /data true rprivate}] /ros1 -> [{bind d:dockercontainer osdata /data true rprivate}] /wsl_vscode -> [{bind E:studydockercontainervscodedata /data true rprivate}]
powershell
# 1. 退出 Docker Desktop(右键系统托盘图标 -> Quit Docker Desktop) # 2. 以管理员身份打开 PowerShell,终止 WSL wsl --shutdown
powershell
# 创建备份目录 mkdir F:2026_wsl_docker_backup -Force # 查看现有发行版 wsl -l -v
# 备份你的发行版(根据实际名称调整) wsl --export Ubuntu-22.04 F:2026_wsl_docker_backupUbuntu-22.04.tar wsl --export docker-desktop F:2026_wsl_docker_backupdocker-desktop.tar
如果 wsl -l -v 显示还有其他发行版,一并备份。
powershell
# 备份 D 盘数据 xcopy D:dockercontainer os2data F:2026_wsl_docker_backupdata os2data /E /I /H xcopy D:dockercontainer osdata F:2026_wsl_docker_backupdata osdata /E /I /H
# 备份 E 盘数据 xcopy E:studydockercontainervscodedata F:2026_wsl_docker_backupdatavscodedata /E /I /H
安装 Docker Desktop(安装完成后不要启动)
将备份文件夹 F:2026_wsl_docker_backup 放回 F 盘
powershell
# 1. 确保 Docker Desktop 未运行
2. 以管理员身份打开 PowerShell,终止 WSL
wsl –shutdown
powershell
# 创建原目录 mkdir D:dockercontainer os2data -Force mkdir D:dockercontainer osdata -Force mkdir E:studydockercontainervscodedata -Force
恢复数据
xcopy F:2026_wsl_docker_backupdata os2data D:dockercontainer os2data /E /I /H /Y xcopy F:2026_wsl_docker_backupdata osdata D:dockercontainer osdata /E /I /H /Y xcopy F:2026_wsl_docker_backupdatavscodedata E:studydockercontainervscodedata /E /I /H /Y
powershell
# 导入发行版(注意:不要手动创建 C:WSL 目录,wsl –import 会自动创建) wsl –import Ubuntu-22.04 C:WSLUbuntu F:2026_wsl_docker_backupUbuntu-22.04.tar –version 2 wsl –import docker-desktop C:WSLdocker F:2026_wsl_docker_backupdocker-desktop.tar –version 2
2.5 设置默认发行版(可选)
powershell
将 Ubuntu 设为默认
wsl –set-default Ubuntu-22.04
2.6 启动 Docker Desktop
启动 Docker Desktop,它会自动识别已导入的 docker-desktop 发行版。
powershell
# 查看所有容器 docker ps -a
查看 tinyproxy 端口映射
docker port tinyproxy
进入 Ubuntu 验证
wsl
将以下内容保存为 restore.bat,以管理员身份运行:
batch
@echo off echo ======================================== echo 开始恢复 Docker 环境 echo ========================================
echo [1⁄5] 关闭 WSL… wsl –shutdown
echo [2⁄5] 创建目录… mkdir D:dockercontainer os2data 2>nul mkdir D:dockercontainer osdata 2>nul mkdir E:studydockercontainervscodedata 2>nul
echo [3⁄5] 恢复宿主机数据… xcopy F:2026_wsl_docker_backupdata os2data D:dockercontainer os2data /E /I /H /Y xcopy F:2026_wsl_docker_backupdata osdata D:dockercontainer osdata /E /I /H /Y xcopy F:2026_wsl_docker_backupdatavscodedata E:studydockercontainervscodedata /E /I /H /Y
echo [4⁄5] 恢复 WSL 发行版… wsl –import Ubuntu-22.04 C:WSLUbuntu F:2026_wsl_docker_backupUbuntu-22.04.tar –version 2 wsl –import docker-desktop C:WSLdocker F:2026_wsl_docker_backupdocker-desktop.tar –version 2
echo [5⁄5] 设置默认发行版… wsl –set-default Ubuntu-22.04
echo ======================================== echo 恢复完成! echo 请启动 Docker Desktop echo 然后运行: docker ps -a echo ======================================== pause
项目 内容 备份目录 F:2026_wsl_docker_backup 备份前 退出 Docker Desktop → wsl –shutdown 备份 WSL wsl –export 发行版 路径.tar 备份数据 xcopy 原路径 备份路径 /E /I /H 恢复前 安装 Docker Desktop(不启动)→ wsl –shutdown 恢复数据 xcopy 备份路径 原路径 /E /I /H /Y 恢复 WSL wsl –import 发行版 安装路径 备份.tar –version 2 验证 docker ps -a
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/256860.html