windows系统下,podman-desktop使用wsl2时会创建1个名为podman-machine-default容器,容器默认存放于C盘的C:\Users\<用户名>\.local\share\containers\podman\machine\wsl\wsldist\podman-machine-default\ext4.vhdx中。随着时间的推移,这个ext4.vhdx文件会越来越大,可能导致C盘空间不足,下面记录podman-desktop修改容器目录到其他的硬盘的操作记录。
本文默认将容器导出到 F:.cache 目录,然后重新导入到 F:\podman\machine\wsl\wsldist\podman-machine-default 目录
导出镜像
1
2
3mkdir -p F:\.cache && mkdir -p F:\podman\machine\wsl\wsldist\podman-machine-default
wsl --export podman-machine-default F:\.cache\podman-machine-default.tar销毁原docker镜像:
1
wsl --unregister podman-machine-default
重新导入镜像到F盘下
使用刚备份的tar重新导入docker镜像并指定自定义的映射目录,并指定wsl版本为2
1
wsl --import podman-machine-default F:\podman\machine\wsl\wsldist\podman-machine-default\ F:\.cache\podman-machine-default.tar --version 2
修改podman配置:
迁移podman配置文件到F盘下
手动将用户目录下的
C:\Users\<用户名>\.local\share\containers\podman\machine目录下的的wsl目录、machine文件、.pub文件等复制到F:\podman\machine目录下修改
podman-machine-default.json配置下的machine目录修改
C:\Users\<用户名>\.config\containers\podman\machine\wsl\podman-machine-default.json配置文件下的machine目录为F:\\podman\\machine修改
podman-connections.json配置下的machine目录修改
C:\Users\<用户名>\AppData\Roaming\containers\podman-connections.json配置文件下的machine目录为F:\\podman\\machine
重启
重启
podman-desktop应用,对应的wsl容器会自动关联启动,此时容器目录已经迁移到F盘下了,使用podman拉取镜像,可观察到F:\podman\machine\wsl\wsldist\podman-machine-default\ext4.vhdx这个文件体积变化。