一、Docker Registry(镜像仓库)
镜像仓库(Docker Registry)负责存储、管理和分发镜像,并且提供了登录认证能力,建立了仓库的索引。
镜像仓库管理多个 Repository,Repository 通过命名来区分。每个 Repository 包含一个或多个镜像,镜像通过镜像名称和标签(Tag)来区分。
Docker 镜像仓库负责存储和管理容器镜像,包含 Registry、Repository 和镜像三层结构。按开放程度分为公有仓库和私有仓库,常见工具有 Docker Hub、Harbor 及 Nexus。使用流程涉及登录认证、拉取镜像、构建推送及登出操作,核心命令包括 docker login、pull、push、search 和 logout,配合国内镜像源可解决网络访问问题。

镜像仓库(Docker Registry)负责存储、管理和分发镜像,并且提供了登录认证能力,建立了仓库的索引。
镜像仓库管理多个 Repository,Repository 通过命名来区分。每个 Repository 包含一个或多个镜像,镜像通过镜像名称和标签(Tag)来区分。
核心层级关系:
镜像的组成: 一个容器镜像由两部分构成:
docker login 登录仓库。docker pull 拉取所需镜像。commit 等方式制作完镜像后,通过 docker push 上传到仓库。Docker Registry 中的镜像通常由开发人员制作,而后推送至'公共'或'私有'Registry 上保存,供其他人员使用(如部署到生产环境)。具体流程涉及以下环境:
启动容器时,Docker Daemon 会先试图从本地获取相关镜像;若本地镜像不存在,会从 Registry 中下载该镜像并保存到本地,供后续使用。
Docker Hub 是 Docker 提供的托管存储库服务,用于查找容器映像并与团队共享,具有以下核心功能:
国内从 Docker Hub 拉取镜像有时会因网络问题变慢,可配置国内镜像加速器。国内主流云服务商均提供镜像加速器服务,例如:
配置步骤
/etc/docker/daemon.json 文件,写入以下内容(若文件已有配置,需在原有结构中添加,确保 JSON 格式正确):{"registry-mirrors":["https://hub-mirror.c.163.com","https://mirror.baidubce.com"]}
# 加载配置
sudo systemctl daemon-reload
# 重启 Docker
sudo systemctl restart docker
# 查看 Docker 状态,确认重启成功
sudo systemctl status docker
私有镜像仓库是部署在公司或组织内部,用于存储、分发自身应用 Docker 镜像的仓库。在企业自动化发布系统中,从安全角度出发,应用打包镜像通常仅存储在私有仓库,CI/CD 流程通过向私有仓库上传和拉取镜像衔接。
常见的私有仓库工具:
| 命令 | 别名 | 功能 | 备注 |
|---|---|---|---|
docker login | - | 登录镜像仓库 | 登录私有仓库或需认证的公有仓库时必备 |
docker pull | docker image pull | 从镜像仓库拉取镜像 | 获取所需镜像的核心命令 |
docker push | docker image push | 将本地镜像推送至镜像仓库 | 分享或备份镜像时使用 |
docker search | - | 从 Docker Hub 查找镜像 | 需注意:国内因网络原因,该命令可能无法实操,需国外网络支持 |
docker logout | - | 登出镜像仓库 | 退出当前登录的仓库,保障账号安全 |
docker login [OPTIONS][SERVER]
-u:指定登录的用户名。-p:指定登录的密码。docker login -u 用户名 -p 密码
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
docker image pull
-a:拉取该镜像的所有 tagged 版本。--disable-content-trust:忽略镜像的校验(默认开启校验)。# 拉取 nginx 1.23.3 版本镜像
docker pull nginx:1.23.3
docker login 登录仓库。docker push [OPTIONS] NAME[:TAG]
docker image push
-a:推送该镜像的所有 tagged 版本。--disable-content-trust:忽略镜像的校验(默认开启校验)。# 将本地 myapache:v1 镜像推送到仓库
docker push myapache:v1
docker search [OPTIONS]TERM
--no-trunc:显示完整的镜像描述,避免截断。-f <过滤条件>:按条件过滤结果(如列出收藏数不小于指定值的镜像)。# 从 Docker Hub 查找所有名称包含 nginx,且 star 数大于 10 的镜像
docker search -f stars=10 nginx
docker logout [SERVER]
# 登出默认仓库(Docker Hub)
docker logout
# 登出指定仓库(如阿里云镜像仓库)
docker logout registry.cn-hangzhou.aliyuncs.com

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online
通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online
将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online