系列文章目录

Docker部署 registry
Docker搭建 svn
Docker部署 Harbor
Docker 部署SQL Server 2017
Docker 安装 MS SqlServer
Docker部署 Oracle12c
Docker部署Jenkins



前言

在 Docker 中,当我们执行 docker pull xxx 的时候 ,它实际上是从 registry.hub.docker.com 这个地址去查找,这就是Docker公司为我们提供的公共仓库。在工作中,我们不可能把企业项目push到公有仓库进行管理。所以为了更好的管理镜像,Docker不仅提供了一个中央仓库,同时也允许我们搭建本地私有仓库。


一、registry搭建

Docker 官方提供了一个搭建私有仓库的镜像 registry ,只需把镜像下载下来,运行容器并暴露5000端口,就可以使用了。

二、使用步骤

1. pull registry

代码如下(示例):

docker pull registry:2

2. run image

代码如下(示例):

docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --name myregistry registry:2

Registry服务默认会将上传的镜像保存在容器的 /var/lib/registry,我们将宿主机的 /opt/registry 目录挂载到该目录,即可实现将镜像保存到宿主机的 /opt/registry 目录了。

浏览器访问http://127.0.0.1:5000/v2,出现下面情况说明registry运行正常。
在这里插入图片描述

3. 验证将本地镜像推送到私有仓库

  • 查看本地镜像
$ docker images
REPOSITORY                                             TAG                 IMAGE ID            CREATED             SIZE
nginx                                                  latest              568c4670fa80        5 weeks ago         109MB
  • 使用 docker tag 将该镜像标志为要推送到私有仓库
docker tag nginx:latest localhost:5000/nginx:latest
  • 使用 docker push 命令将 nginx 镜像 push到私有仓库中
docker push localhost:5000/nginx:latest
  • 访问 http://127.0.0.1:5000/v2/_catalog 查看私有仓库目录,可以看到刚上传的镜像了。
    在这里插入图片描述
  • 下载私有仓库的镜像,使用如下命令
# docker pull localhost:5000/镜像名:版本号
# 例如
docker pull localhost:5000/nginx:latest

总结

以上就是使用官方的registry镜像搭建私有的镜像仓库和日常使用。本文仅仅简单介绍了registry的搭建及使用,更能简单。建议使用功能更为强大的开源Harbor私有仓库。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐