Auto-sync: 2026-04-21 16:03
This commit is contained in:
@@ -1,42 +1,96 @@
|
||||
---
|
||||
title: "Docker Load"
|
||||
title: Docker Load
|
||||
type: concept
|
||||
tags: [docker, image, import]
|
||||
sources: [docker-images-transfer-guide, 如何传输Docker-images-并且在另一个Docker安装]
|
||||
last_updated: 2026-04-17
|
||||
tags: [docker, container, image-transfer]
|
||||
last_updated: 2026-04-21
|
||||
---
|
||||
|
||||
## Summary
|
||||
Docker Load 是 Docker 命令行工具的导入命令,用于从 tar 归档文件还原 Docker 镜像。
|
||||
# Docker Load
|
||||
|
||||
## Definition
|
||||
从 tar 格式归档文件导入并还原 Docker 镜像的命令。
|
||||
|
||||
## Command Syntax
|
||||
`docker load` 是 Docker CLI 命令,用于从 tar 归档文件加载镜像到本地 Docker 镜像存储。与 `docker save` 配合使用,实现镜像的离线迁移。
|
||||
|
||||
## Syntax
|
||||
|
||||
```bash
|
||||
docker load < <input_file.tar>
|
||||
# 或
|
||||
docker load -i <input_file.tar>
|
||||
docker load [OPTIONS]
|
||||
```
|
||||
|
||||
## Examples
|
||||
### Options
|
||||
|
||||
| Option | Description |
|
||||
|--------|-------------|
|
||||
| `-i, --input` | 指定输入的 tar 文件(默认从 stdin 读取) |
|
||||
| `-q, --quiet` | 静默模式,减少输出 |
|
||||
|
||||
## Usage Examples
|
||||
|
||||
### 基本用法
|
||||
|
||||
```bash
|
||||
# 从 tar 文件导入镜像
|
||||
# 从文件加载
|
||||
docker load < nginx.tar
|
||||
|
||||
# 指定文件
|
||||
docker load -i images.tar
|
||||
|
||||
# 静默模式
|
||||
docker load -i images.tar -q
|
||||
```
|
||||
|
||||
### 典型工作流:从开发机接收镜像到 NAS
|
||||
|
||||
```bash
|
||||
# 在开发机上
|
||||
docker save -o xiaoya.tar xiaoyaliu/alist:latest
|
||||
|
||||
# 将 xiaoya.tar 复制到 NAS
|
||||
scp xiaoya.tar nas:/volume1/docker/images/
|
||||
|
||||
# 在 NAS 上加载
|
||||
docker load < xiaoya.tar
|
||||
|
||||
# 使用 -i 参数
|
||||
docker load -i xiaoya.tar
|
||||
# 验证
|
||||
docker images | grep xiaoya
|
||||
```
|
||||
|
||||
## Use Cases
|
||||
- 离线环境镜像导入
|
||||
- 镜像备份恢复
|
||||
- 跨主机镜像迁移
|
||||
### 使用 SSH 管道直接传输
|
||||
|
||||
```bash
|
||||
# 在目标机器上执行(镜像从远程机器流式传输)
|
||||
ssh user@source-host 'docker save nginx:latest' | docker load
|
||||
```
|
||||
|
||||
## Related Concepts
|
||||
- [[Docker-Image]]:被导入的镜像对象
|
||||
- [[Docker-Save]]:对应的导出命令
|
||||
|
||||
## Connections
|
||||
- [[Docker-Save]]:对应的导出命令
|
||||
- [[Docker-Image]]:被导入的目标
|
||||
- [[Docker-TAR-Archive]]:输入的归档文件格式
|
||||
|
||||
## Relationships
|
||||
|
||||
- [[Docker-Image]] ← 导入为 ← [[Docker-Load]]
|
||||
- [[Docker-Load]] ← 依赖 ← [[Docker-Save]]
|
||||
|
||||
## Key Points
|
||||
|
||||
1. **完整还原**:从 tar 文件完整恢复镜像,包括所有层和元数据
|
||||
2. **自动识别**:自动识别 tar 文件中的镜像名称和标签
|
||||
3. **可重复导入**:同一镜像可多次导入(会创建重复条目,需配合 `docker rmi`)
|
||||
4. **ID 匹配**:如果镜像 ID 已存在,会分配新的 ID
|
||||
|
||||
## Comparison with Alternatives
|
||||
|
||||
| 特性 | docker load | docker import |
|
||||
|------|-------------|---------------|
|
||||
| 数据源 | docker save 输出 | docker export 输出 |
|
||||
| 内容 | 完整镜像(含层) | 容器文件系统快照 |
|
||||
| 元数据 | 完整保留 | 不保留 |
|
||||
| 适用场景 | 镜像迁移 | 容器基础创建 |
|
||||
|
||||
## Notes
|
||||
|
||||
- 导入后的镜像默认标签可能为 `<none>:<none>`,需要手动 tag
|
||||
- 使用 `docker tag` 命令为导入的镜像设置标签
|
||||
- 大镜像加载可能需要较长时间,显示进度条
|
||||
|
||||
Reference in New Issue
Block a user