docker load 用于将本地 tar 格式镜像文件导入本机镜像仓库,不上传远程;需确认文件由 docker save 生成且路径正确,再执行 docker load 命令。

使用 docker load 是将本地保存的镜像文件(通常是通过 docker save 导出的 tar 包)重新导入到 Docker 本地镜像仓库中,而不是上传到远程仓库(如 Docker Hub)。它不涉及“仓库推送”,只影响本机的镜像列表。
确认镜像文件格式和路径
确保你有一个合法的 Docker 镜像归档文件,扩展名通常为 .tar 或 .tar.gz。该文件应由 docker save 生成,例如:
docker save nginx:alpine > nginx-alpine.tardocker save -o myapp.tar ubuntu:22.04 myapp:latest
运行前用 ls -lh 确认文件存在且可读。
执行 docker load 命令
在终端中执行以下命令即可加载:
- 基础用法:
docker load - 或指定输入文件:
docker load -i myapp.tar - 若为 gzip 压缩包(如
myapp.tar.gz),Docker 会自动解压,仍用-i参数即可
成功后会输出类似:Loaded image: nginx:alpine 或 Loaded image: myapp:latest。
验证镜像是否加载成功
运行以下命令查看本地镜像列表,确认新镜像已存在:
-
docker images—— 查看所有镜像及标签 -
docker images | grep myapp—— 快速过滤特定镜像 -
docker inspect myapp:latest—— 检查镜像详细信息(可选)
常见问题与注意事项
加载失败时常见原因包括:
- 文件损坏或不是有效镜像归档(尝试用
file xxx.tar检查类型) - 权限不足:确保当前用户对 tar 文件有读取权限
- 镜像层缺失:
docker save保存的是完整镜像(含所有依赖层),不可手动删减 tar 内容 - 不支持直接加载单个 layer 文件,必须是
docker save输出的标准归档
注意:docker load 不会触发构建、不联网、不拉取远程内容,纯粹是本地导入操作。

















