Files
nexus/wiki/sources/如何传输Docker-images-并且在另一个Docker安装.md
2026-04-21 16:03:27 +08:00

2.9 KiB
Raw Blame History

title, source, author, published, created, description, tags
title source author published created description tags
如何传输 Docker images 并且在另一个 Docker 安装 shenwei 2025-03-06 从工作笔记本将 Docker 镜像传输到 Synology NAS Docker 的完整操作流程
docker
nas
synology
home-office

如何传输 Docker images 并且在另一个 Docker 安装

Source File

Summary

Docker 镜像在不同主机之间的离线传输方法,使用 docker savedocker load 命令实现无需 registry 的镜像迁移。典型场景:将工作笔记本上的 Docker 镜像传输到 Synology NAS 的 Docker 环境。

Core Commands

导出镜像(源设备)

# 拉取镜像(如需要)
docker pull image_name:tag

# 打包镜像为 tar 文件
docker save -o images.tar image_name:tag

# 或打包多个镜像
docker save -o images.tar image1:tag image2:tag

导入镜像(目标设备)

docker load < images.tar

Step-by-Step Guide

步骤 1在源设备打包镜像

在工作笔记本(已安装 Docker Desktop使用 docker save 命令将镜像打包成 TAR 文件:

# 拉取镜像(如需要)
docker pull xiaoyaliu/alist

# 打包镜像为 tar 文件
docker save -o xiaoya.tar xiaoyaliu/alist

步骤 2传输 TAR 文件

将生成的 xiaoya.tar 文件上传到 Synology NAS 的文件系统中(通过 SMB/NFS 等方式)。

步骤 3在 NAS 导入镜像

通过 SSH 连接到 NAS运行 docker load 命令导入镜像:

# 进入 tar 文件所在目录
cd /volume1/docker/images

# 导入镜像
docker load < xiaoya.tar

步骤 4验证

# 查看镜像列表
docker images

# 在 NAS 的 Container Manager 界面中查看镜像列表

Alternative Methods

方法二:使用 docker commit

从容器创建新镜像后再导出:

# 从容器创建镜像
docker commit container_id new_image_name:tag

# 导出镜像
docker save -o images.tar new_image_name:tag

方法三:使用 docker export/import

⚠️ 注意export/import 操作的是容器文件系统,而非镜像层,不保留 CMD/ENTRYPOINT 等元数据

# 导出容器
docker export -o container.tar container_id

# 导入为镜像
docker import container.tar new_image_name:tag

save/load vs export/import

特性 save/load export/import
操作对象 镜像层 容器文件系统
保留历史层
保留元数据
文件大小 较大 较小
适用场景 镜像迁移 容器快照

Tags

#docker #synology #nas #home-office #镜像传输