在部署本地镜像注册表前,需先在主机上安装 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,并推送到本地注册表。完成后,通过本地注册表再次获取该镜像以进行验证。
- 从 Docker Hub 拉取镜像
$ docker pull ubuntu:16.04
- 给镜像打上本地注册表的标签。标签的第一部分若为主机名和端口,则 Docker 会将其解析为注册表的位置
$ docker tag ubuntu:16.04 localhost:5000/My-Ubuntu
- 将镜像推送到运行在本地注册表上的地址 localhost:5000
$ docker push localhost:5000/My-Ubuntu
- 从本地缓存中删除原始镜像和本地注册表镜像标签,以便测试从注册表提取镜像(注意:这不会删除注册表中的镜像)
$ docker image rm ubuntu:16.04
$ docker image rm localhost:5000/My-Ubuntu
- 从本地注册表提取镜像以验证
$ docker pull localhost:5000/My-Ubuntu
停止本地注册表
要停止注册表,可使用与其他容器相同的命令:
$ docker container stop registry
如需删除容器,请执行:
$ docker container rm -v registry
