Docker Desktop 在 Windows 10 上使用 WSL2 更改 Docker 容器存储位置
新版本 windows 上使用 docker 严重依赖 WSL 2 ,与旧版本基于 Hyper-V 方法相比,新版本没有定义容器和images的位置定义。
1. Quit Docker Desktop
退出 Docker Desktop
2. Open Command Prompt (or PowerShell)
打开命令提示符
3. List existing WSL storages
列出现有的 WSL 存储
$ wsl --list -v
Expected output:
NAME STATE VERSION * docker-desktop Running 2 docker-desktop-data Running 2
4. Turn off WSL
关掉 WSL
$ wsl --shutdown
Output:
NAME STATE VERSION * docker-desktop Stopped 2 docker-desktop-data Stopped 2
5. Create following path (with all subfolders):
创建以下路径(包含所有子文件夹)
$ mkdir D:\Docker\wsl\data\
6. Export containers and their data. This step can actually take some time depending on the size of the original ext4.vhdx file.
导出容器及其数据。此步骤实际上可能需要一些时间,具体取决于原始ext4.vhdx文件的大小。
$ wsl --export docker-desktop-data "D:\Docker\wsl\data\docker-desktop-data.tar"
7. Unregister the container data from WSL. It will also automatically delete the ext4.vhdx from original location.
从 中注销容器数据WSL。它还将自动ext4.vhdx从原始位置删除。
$ wsl --unregister docker-desktop-data
8. Import the container data, but keep it into another location (i.e. on drive D: as defined above). This will automatically create ext4.vhdx file from the backup.
导入容器数据,但将其保存到另一个位置(即在D:上面定义的驱动器上)。这将自动ext4.vhdx从备份中创建文件。
$ wsl --import docker-desktop-data "D:\Docker\wsl\data" "D:\Docker\wsl\data\docker-desktop-data.tar" --version 2
9. Delete the exported .tar file: D:\Docker\wsl\data\docker-desktop-data.tar and nothing more!
删除导出的 .tar 文件:仅此D:\Docker\wsl\data\docker-desktop-data.tar而已!
10. Start Docker Desktop and run your containers.
启动 Docker Desktop 并运行您的容器。
参考:https://blog.codetitans.pl/post/howto-docker-over-wsl2-location/
共 0 条评论