如何在自定义目录/opt/test/中构建Docker镜像proj-xxx-img?
如何将Docker镜像存储到指定目录/opt/test/
Docker默认会把镜像存储在自身管理的目录中,无法直接通过docker build命令指定镜像的存储路径,不过可以通过以下两种方式实现你的需求:
方案1:全局修改Docker镜像存储目录(所有镜像都存到/opt/test/)
如果希望后续所有构建、拉取的镜像都默认存储到/opt/test/,可以修改Docker守护进程的配置:
- 停止Docker服务:
sudo systemctl stop docker - 创建目标存储目录:
sudo mkdir -p /opt/test/docker - 创建或修改Docker配置文件
/etc/docker/daemon.json,添加存储路径配置:{ "data-root": "/opt/test/docker" } - 若需要保留原有镜像,把默认存储目录的内容迁移到新目录:
sudo rsync -aX /var/lib/docker/ /opt/test/docker/ - 重启Docker服务:
sudo systemctl start docker - 验证配置是否生效:
输出应该显示docker info | grep "Docker Root Dir"Docker Root Dir: /opt/test/docker
方案2:仅将指定镜像导出到/opt/test/(不改变全局存储)
如果只是想把proj-xxx-img这个镜像备份到/opt/test/,不需要修改全局配置,可按以下步骤操作:
- 先完成镜像构建(用你原有的命令):
docker build -t proj-xxx-img . - 将镜像导出为tar文件存到/opt/test/:
docker save -o /opt/test/proj-xxx-img.tar proj-xxx-img - 后续需要使用该镜像时,可从tar文件导入:
docker load -i /opt/test/proj-xxx-img.tar
内容的提问来源于stack exchange,提问作者Your Daddy
相关产品推荐
相关产品推荐

