如何将服务器中的Docker镜像批量导出?

要将所有 Docker 镜像保存为一个 tar 包,可以通过以下命令实现:

首先,获取所有镜像的仓库名和标签,然后批量保存:

bash 复制代码
# 保存所有镜像到 all_docker_images.tar 文件
sudo docker save $(sudo docker images --format "{{.Repository}}:{{.Tag}}" | grep -v "<none>") -o all_docker_images.tar

命令说明:

  • docker images --format "{``{.Repository}}:{``{.Tag}}":以 仓库名:标签 格式列出所有镜像
  • grep -v "<none>":过滤掉标签为 <none> 的临时镜像(可选,根据需要保留)
  • docker save ... -o all_docker_images.tar:将筛选出的所有镜像保存到指定 tar 文件

后续操作:

如果需要在其他机器上恢复这些镜像,使用以下命令:

bash 复制代码
sudo docker load -i all_docker_images.tar

注意事项:

  1. 保存的 tar 文件可能很大,确保磁盘有足够空间
  2. 若需要包含所有镜像(包括 <none> 标签的),可去掉 | grep -v "<none>" 部分
  3. 非 root 用户可能需要添加 sudo 权限执行 Docker 命令

执行完成后,当前目录会生成 all_docker_images.tar 文件,包含所有指定的 Docker 镜像。

相关推荐
Patrick_Wilson17 小时前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
阿里云云原生19 小时前
AI 开发新常态:当 Cursor、Claude、Codex 并行,如何统一管理散落的 Skill 资产?
云原生·ai编程
探索云原生1 天前
K8s 1.36 这个 GA 特性,把 initContainer 拉模型的 hack 干掉了
ai·云原生·kubernetes
Suroy1 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭1 天前
运行你的第一个Docker容器
后端·docker·容器
Java之美1 天前
从edge-trigger到level-trigger,谈谈 Kubernetes controller 的开发范式
云原生
阿里云云原生2 天前
深度解构:当 Append-only 的 SLS 遇上 Update/Delete,是如何实现设计权衡的?
云原生
宋均浩2 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
Java之美2 天前
一次k8s升级引发的DevicePlugin注册失败
云原生·kubernetes
秋播2 天前
nerdctl推送rancher本地镜像到harbor
云原生