【AI 总结】docker image pull
docker image pull | AI 总结
docker image pull 命令核心信息
| 项目 | 内容 |
|---|---|
| 功能 | 从镜像仓库下载镜像 |
| 用法 | docker image pull [OPTIONS] NAME[:TAG|@DIGEST] |
| 别名 | docker pull(更简洁的命令形式) |
关键说明
- 镜像来源:多数镜像基于 Docker Hub registry 中的基础镜像创建,Docker Hub 提供大量预构建镜像,可直接拉取使用,无需自行定义配置。
- 代理配置:若处于企业等需 HTTP 代理服务器的环境,在连接镜像仓库前,需参考
dockerd命令行参考配置 Docker 守护进程的代理设置。 - 并发下载:默认情况下,Docker 守护进程一次拉取镜像的 3 个层;低带宽环境下,可通过
--max-concurrent-downloads守护进程选项降低并发数,避免超时,具体可查看守护进程文档。
命令选项
| 选项 | 默认值 | 描述 |
|---|---|---|
-a, --all-tags |
无 | 下载仓库中所有带标签的镜像 |
--platform |
无 | API 1.32+ 版本可用,若服务器支持多平台,可通过该选项设置拉取镜像的平台 |
-q, --quiet |
无 | 抑制详细输出信息 |
操作示例
从 Docker Hub 拉取镜像
未指定标签时,Docker 引擎默认使用
:latest标签,示例拉取debian:latest镜像:1
2
3
4
5
6
7$ docker image pull debian
Using default tag: latest
latest: Pulling from library/debian
e756f3fdd6a3: Pull complete
Digest: sha256:3f1d6c17773a45c97bd8f158d665c9709d7b29ed7917ac934086ad96f92e4510
Status: Downloaded newer image for debian:latest
docker.io/library/debian:latest镜像层可复用,如
debian:bookworm与debian:latest共享镜像层,拉取debian:bookworm仅下载元数据,示例:1
2
3
4
5$ docker image pull debian:bookworm
bookworm: Pulling from library/debian
Digest: sha256:3f1d6c17773a45c97bd8f158d665c9709d7b29ed7917ac934086ad96f92e4510
Status: Downloaded newer image for debian:bookworm
docker.io/library/debian:bookworm可通过
docker images命令查看本地已有的镜像,示例中debian:bookworm和debian:latest镜像 ID 相同,仅标签不同,共享镜像层,不额外占用磁盘空间。
按摘要(不可变标识符)拉取镜像
- 先拉取镜像获取摘要,如拉取
ubuntu:24.04镜像后,会显示其摘要(如sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30)。 - 按摘要拉取镜像的命令示例:
1
2
3
4
5$ docker pull ubuntu@sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30
docker.io/library/ubuntu@sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30: Pulling from library/ubuntu
Digest: sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30
Status: Image is up to date for ubuntu@sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30
docker.io/library/ubuntu@sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30 - 摘要也可用于 Dockerfile 的
FROM指令,示例:1
2FROM ubuntu@sha256:2e863c44b718727c860746568e1d54afd13b2fa71b160f5cd9058fc436217b30
LABEL org.opencontainers.image.authors="some maintainer <maintainer@example.com>" - 注意:按摘要拉取会将镜像 “固定” 到特定版本,Docker 不会自动拉取包含安全更新等的新版本镜像,若需更新需手动更改摘要。
从其他仓库拉取镜像
- 默认从 Docker Hub 拉取,也可手动指定仓库路径(类似 URL,无协议说明符
https://)。 - 示例:从本地 5000 端口的仓库(
myregistry.local:5000)拉取testing/test-image镜像:1
$ docker image pull myregistry.local:5000/testing/test-image - 仓库凭证通过
docker login管理,Docker 默认用https://与仓库通信,若仓库允许不安全连接,需参考 “不安全仓库” 相关章节。
拉取包含多个镜像的仓库(-a, –all-tags 选项)
- 默认仅拉取仓库中的单个镜像,使用
-a或--all-tags选项可拉取仓库所有镜像,示例拉取ubuntu仓库所有镜像:1
2
3
4
5
6
7
8$ docker image pull --all-tags ubuntu
Pulling repository ubuntu
ad57ef8d78d7: Download complete
105182bb5e8b: Download complete
511136ea3c5a: Download complete
73bd853d2ea5: Download complete
....
Status: Downloaded newer image for ubuntu - 拉取完成后,可通过
docker image ls --filter reference=ubuntu查看拉取的ubuntu系列镜像。
取消拉取操作
在终端中运行 docker pull 命令时,按 CTRL - c 终止进程,即可取消拉取操作,示例:
1 | |
当守护进程与发起拉取的客户端连接中断、丢失或命令被手动终止时,Docker 引擎都会终止拉取操作。
【AI 总结】docker image pull
https://blog.lllllan.cn/docker/image/pull/