互联网技术 / 互联网资讯 · 2024年3月28日

Docker 注册表部署与本地镜像管理教程

在部署本地镜像注册表前,需先在主机上安装 Docker。注册表是一个 Registry 镜像的实例,在 Docker 中运行。本主题提供有关部署和配置注册表的基本信息。

部署本地注册表

按下列命令启动注册表容器:

$ docker run -d -p 5000:5000 --restart=always --name registry registry:2

注册表现已就绪,可用于本地镜像的管理与存储。

将镜像从 Docker Hub 复制到本地注册表

你可以先从 Docker Hub 拉取镜像,然后将其推送到本地注册表。以下示例演示如何将 Ubuntu:16.04 的镜像从 Docker Hub 获取、重新标记为本地注册表地址 My-Ubuntu,并推送到本地注册表。完成后,通过本地注册表再次获取该镜像以进行验证。

  1. 从 Docker Hub 拉取镜像
$ docker pull ubuntu:16.04
  1. 给镜像打上本地注册表的标签。标签的第一部分若为主机名和端口,则 Docker 会将其解析为注册表的位置
$ docker tag ubuntu:16.04 localhost:5000/My-Ubuntu
  1. 将镜像推送到运行在本地注册表上的地址 localhost:5000
$ docker push localhost:5000/My-Ubuntu
  1. 从本地缓存中删除原始镜像和本地注册表镜像标签,以便测试从注册表提取镜像(注意:这不会删除注册表中的镜像)
$ docker image rm ubuntu:16.04
$ docker image rm localhost:5000/My-Ubuntu
  1. 从本地注册表提取镜像以验证
$ docker pull localhost:5000/My-Ubuntu

停止本地注册表

要停止注册表,可使用与其他容器相同的命令:

$ docker container stop registry

如需删除容器,请执行:

$ docker container rm -v registry