zoukankan      html  css  js  c++  java
  • Docker学习之Docker Registry

    前言

    前面已经学习了怎样通过Dockerfile来构建我们自己的镜像了,但是一个系统可能包含着很多个微服务即有很多个镜像,当镜像越来越多的时候,就必须得有一个地方来管理这些镜像,Docker官方提供了Docker Hub来维护管理所有的镜像,只是对于免费用户而言,只能创建一个私有仓库,付费用户才拥有更多私有仓库的权限,对此官方开源了Docker Registry的源代码,我们可以通过它在局域网内部搭建私有的镜像注册中心.

    使用公共注册中心

    Docker Hub是Docker官方维护的公共镜像注册中心,用户可以将自己的镜像推送到Docker Hub免费的仓库中,要想使用Docker Hub得先注册一个Docker Hub账号.
    账号注册地址:https://hub.docker.com/(注意要想成功注册账号得先FQ)


    注册成功后就可以通过docker login命令输入账号密码登录进去创建我们自己的私有仓库和推送镜像了.

    搭建本地注册中心

    通常由于安全和网络原因,企业内部都会在本地局域网搭建一个镜像注册中心.
    1.运行docker pull命令拉取registry镜像.



    2.通过registry镜像启动一个容器.


    命令cp:sudo docker run -d -v /opt/docker-registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest


    3.查看容器运行情况.

    4.容器启动后打开浏览器输入192.168.56.101:5000/v2/出现下面情况则说明运行正常.

    接着我们使用docker push命令来推送自己的镜像到本地注册中心.
    推送过程可能会不成功即出现下面这种情况getsocket:connection refused.



    可尝试以下解决方案:
    修改/etc/docker/daemon.json文件
    vi /etc/docker/daemon.json
    

    增加"insecure-registries": ["192.168.56.101:5000"]



    然后重启docker引擎

    service docker restart
    

    再次推送镜像到注册中心,我们会发现这次推送成功了.



    push成功后再来看看刚刚推送上来的镜像,打开浏览器输入:



    也可以使用以下命令来验证是否已推送成功:

    到此就搭建好了Docker私有仓库了,现在你可以通过 docker pull从本地Registry拉取镜像了.

          </div>
    

    原文地址:https://www.jianshu.com/p/fef890c4d1c2

  • 相关阅读:
    网络存储——数据保护:RAID
    网络存储——磁盘驱动部件
    操作系统——Linux内核完全注释011c-3.0
    信号量和互斥锁的区别
    svn安装和使用
    putty安装和使用
    linux SVN命令
    eclipse 安装配置
    宏定义中#和##的使用
    线程间通信
  • 原文地址:https://www.cnblogs.com/jpfss/p/10948182.html
Copyright © 2011-2022 走看看