1.7 KiB
1.7 KiB
title, type, tags, last_updated
| title | type | tags | last_updated | |||
|---|---|---|---|---|---|---|
| Docker Save | concept |
|
2026-04-21 |
Docker Save
Definition
docker save 是 Docker CLI 命令,用于将一个或多个镜像导出为 tar 归档文件(.tar),实现镜像的离线存储和传输。
Syntax
docker save [OPTIONS] IMAGE [IMAGE...]
Options
| Option | Description |
|---|---|
-o, --output |
指定输出文件名(默认输出到 stdout) |
Usage Examples
基本用法
# 导出单个镜像
docker save -o nginx.tar nginx:latest
# 导出多个镜像
docker save -o images.tar nginx:latest redis:alpine postgres:15
# 使用管道传输
docker save nginx:latest | ssh user@remote-host 'docker load'
典型工作流:将镜像从开发机传输到 NAS
# 在开发机上
docker save -o xiaoya.tar xiaoyaliu/alist:latest
# 将 xiaoya.tar 复制到 NAS(通过 SMB/SCP)
scp xiaoya.tar nas:/volume1/docker/images/
# 在 NAS 上
docker load < xiaoya.tar
Related Concepts
- Docker-Load:对应的导入命令
- Docker-Image:被导出的对象
- Docker-TAR-Archive:生成的归档文件格式
Relationships
- Docker-Image ← 导出为 ← Docker-Save
- Docker-Save → 输出 → Docker-TAR-Archive
Key Points
- 保留镜像层:完整保留镜像的分层结构
- 保留元数据:包括 CMD、ENTRYPOINT、ENV、LABEL 等
- 可移植性:生成的 tar 文件可在任何 Docker 环境中导入
- 适用场景:离线环境迁移、备份、镜像分发
Notes
- 文件大小可能较大(包含所有镜像层)
- 多次 save 同一镜像会重复包含所有层
- 可配合
docker load实现完整的镜像迁移闭环