在 Docker 中,编译(构建)的镜像默认存储在本地 Docker 存储目录中,具体位置取决于操作系统。以下是不同系统的默认存储路径:
/var/lib/docker/
/var/lib/docker/overlay2/(如果使用 overlay2 存储驱动,这是默认配置)/var/lib/docker/image//var/lib/docker/docker images),无需直接访问虚拟机文件系统。docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -n -i sh 进入虚拟机(不推荐常规操作)。如果 Docker 的存储路径被修改过(例如通过 daemon.json 配置 data-root),可以通过以下步骤确认:
1. 查看 Docker 配置:
bash
docker info | grep "Docker Root Dir"
- 输出示例:Docker Root Dir: /mnt/docker-data
2. 镜像会存储在该路径下的 overlay2/ 和 image/ 子目录中。
如果需要在不同主机间迁移镜像,无需直接操作存储目录,推荐使用以下命令:
1. 导出镜像为 .tar 文件:
bash
docker save -o my_image.tar image_name:tag
2. 在其他主机加载镜像:
bash
docker load -i my_image.tar
/var/lib/docker/ 下的文件可能导致 Docker 数据损坏,建议通过 Docker CLI 管理镜像。bash
docker system prune -a如有进一步问题(如特定存储驱动细节),请补充说明!