zoukankan      html  css  js  c++  java
  • Docker 私有仓库搭建

    一、简介

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

    二、registry 的搭建

    1. 搭建

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

    docker pull registry:2
    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运行正常。

    2. 验证

    现在通过push镜像到registry来验证一下。

    查看本地镜像:

    $ docker images
    REPOSITORY                                             TAG                 IMAGE ID            CREATED             SIZE
    nginx                                                  latest              568c4670fa80        5 weeks ago         109MB
    ubuntu                                                 latest              93fd78260bd1        7 weeks ago         86.2MB
    elasticsearch                                          6.5.1               32f93c89076d        7 weeks ago         773MB

    要通过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
  • 相关阅读:
    整数反转
    最长公共前缀
    罗马数字转整数
    单点登录
    VMware Workstation虚拟机密钥
    Pytest 用例内部执行顺序
    判断是不是回文数
    python端口IP字符串是否合法
    python求二叉树深度
    有两个字符串类型的数字,实现一个方法将它们进行相加,并返回相加后的数值。
  • 原文地址:https://www.cnblogs.com/gjack/p/12420527.html
Copyright © 2011-2022 走看看