• Docker Registry


    介绍:
      Registry用于保存docker镜像,包括镜像的层次结构和元数据
      用户可自建Registry,也可使用官方的Docker Hub

    分类:

    • Sponsor Registry: 第三方的registry,供客户和Docker社区使用
    • Mirror Registry: 第三方的registry,只让客户使用
    • Vendor Registry: 由发布Docker镜像的供应商提供的registry
    • Private Registry: 通过设有防火墙和额外的安全层的私有实体提供的

    安装docker-resitry:

    ~]# yum -y install docker-registry

    查看docker-registry安装后各目录:

    ~]# rpm -ql docker-registry
    /etc/docker-distribution/registry/config.yml                     // registry的配置文件
    /usr/bin/registry                             // registry命令程序所在目录
    /usr/lib/systemd/system/docker-distribution.service
    /usr/share/doc/docker-distribution-2.6.2
    /usr/share/doc/docker-distribution-2.6.2/AUTHORS
    /usr/share/doc/docker-distribution-2.6.2/CONTRIBUTING.md
    /usr/share/doc/docker-distribution-2.6.2/LICENSE
    /usr/share/doc/docker-distribution-2.6.2/MAINTAINERS
    /usr/share/doc/docker-distribution-2.6.2/README.md
    /var/lib/registry                             // 镜像所存位置

    查看docker-registry的配置文件:

    ~]# cat /etc/docker-distribution/registy/config.yml
    version: 0.1
    log:
      fields:
        service: registry
    storage:
        cache:
            layerinfo: inmemory              // 缓存在内存中
        filesystem:
            rootdirectory: /var/lib/registry  // 数据存储路径
    http:
        addr: :5000                        // 监听端口

    启动服务:

    ~]# systemctl start docker-distribution
    ~]# ss -nlt | grep 5000
    LISTEN     0      128         :::5000                    :::* 

    推送镜像到registry:

    ~]# docker images
    .....
    myweb                v0.3-9              7d72ff5e7b03        2 hours ago         16MB
    .....
    ~]# docker tag myweb:v0.3-9 hadoop2:5000/myweb:v0.3-9      // 要将tag改为registry服务器的hostname:port/tag
    ~]# docker push hadoop2:5000/myweb:v0.3-9 // 推送镜像到resistry,第一次会报错,因为客户端默认使用https协议
      Get https://hadoop2:5000/v2/: http: server gave HTTP response to HTTPS client
    ~]# vim /etc/docker/daemon.json

      {
        "registry-mirrors": ["https://l10nt4hq.mirror.aliyuncs.com"],   // 镜像下载加速
        "bip": "10.0.0.1/16",                             // docker桥的地址,新建容器时会依次分配地址
        "hosts": ["tcp://0.0.0.0:2375","unix:///var/run/docker.sock"],     // 允许对外监听
        "insecure-registries": ["hadoop2:5000"]            // 添加此行
      }

    ~]# systemctl restart docker     // 重启服务生效

    ~]# docker push hadoop2:5000/myweb:v0.3-9  // 再次推送,成功

    ~]# ll /var/lib/registry     // 会生成一个docker目录,数据都在docker目录下

    docker

  • 相关阅读:
    Mac新手必看教程——轻松玩转Mac OS
    《图解 HTTP》 学习笔记
    在浏览器输入 URL 回车之后发生了什么(超详细版)
    VMware Ubuntu 19最新安装详细过程
    【学习笔记】第八章 python3核心技术与实践--条件与循环
    【学习笔记】第七章 python3核心技术与实践--输入与输出
    【学习笔记】第六章 python核心技术与实践--深入浅出字符串
    Prometheus搭建
    java---yml文件配置
    Nginx一个server配置多个location(使用alias)
  • 原文地址:https://www.cnblogs.com/k-free-bolg/p/11052470.html
Copyright © 2020-2023  润新知