千家信息网

Docker系列11:自建registry(1)

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,一、registry基础1、registry的类别Sponsor Registry:第三方的registry,供用户和社区使用Mirror Registry:第三方的registry,供用户使用Ven
千家信息网最后更新 2025年02月02日Docker系列11:自建registry(1)

一、registry基础

1、registry的类别

  • Sponsor Registry:第三方的registry,供用户和社区使用
  • Mirror Registry:第三方的registry,供用户使用
  • Vendor Registry:由Docker官方提供的registry
  • Private Registry:私有的registry
    【如果用的环境是阿里云,那么用阿里云的registry是最好的选择】

    2、自建registry有三种方法

  • 方法1:本地安装配置registry
  • 方法2:使用官方提供的registry镜像
  • 方法3:使用Harbor制作registry

二、配置本地的registry

  • 在140节点安装registry组件
  • 然后将130节点上的镜推送上来

    第一步:在 140 节点安装registry组件【在extra源中】

    1)安装组件

    [root@host2 ~]# yum install docker-registry -y

    2)检查一下resitory的配置文件

    [root@host2 ~]# vim /etc/docker-distribution/registry/config.yml

    【里面的内容一般不用改动】

    version: 0.1log:fields:service: registrystorage:cache:    layerinfo: inmemoryfilesystem:    rootdirectory: /var/lib/registryhttp:addr: :5000

    3)启动服务

    [root@host2 ~]# systemctl start docker-distribution[root@host2 ~]# ss -tnl | grep 5000LISTEN     0      128       [::]:5000                  [::]:*  

    第二步:在 130 节点制作镜像并上传到registry

    1)修改hosts文件,实现名称解析

    [root@host1 ~]# echo "172.16.100.3     host2">>/etc/hosts[root@host1 ~]# ping host2

    2)给一个现有的镜像打上标签
    先随意找个镜像

    [root@host1 ~]# docker image ls | head -n2REPOSITORY                           TAG                 IMAGE ID           base                                            v1.1                ca1046667ac3   

    给镜像打标签

    [root@host1 ~]# docker tag base:v1.1 host2:5000/baseimg:v1-0

    3)编辑docker配置文件
    虽然此时已经制作好了镜像,但是还不能推送,因为docker默认用的https协议,而我们的registry用的是http协议

    [root@host1 ~]# vim /etc/docker/daemon.json
    {"registry-mirrors": [    "https://registry.docker-cn.com",    "https://mzxx8xy8.mirror.aliyuncs.com"],"hosts": ["tcp://0.0.0.0:3725", "unix://var/run/docker.sock"],"insecure-registries": ["host2:5000"]}

    重启一下服务

    [root@host1 ~]# systemctl daemon-reload[root@host1 ~]# systemctl restart docker

    4)推送镜像

    [root@host1 ~]# docker push host2:5000/baseimg:v1-0

    推送的镜像会保存在服务的特定目录

    [root@host2 ~]# ls /var/lib/registry/docker/registry/v2/repositories/baseimg

    第三步:在 150 节点下载镜像

    1)修改docker配置文件,运行不安全的json
    同:第二步
    2)下载镜像

    [root@host2 ~]# docker pull host2:5000/baseimg:v1-0

    三、使用官方的registry

    官方通过镜像发布了一个registry,只要启动容器就可以了

    第一步:拉取镜像并启动,制作成registry

    1)下载镜像

    [root@host1 ~]# docker pull registry

    2)第二步:创建目录

    [root@host1 ~]# mkdir -p /opt/{auth,data}[root@host1 ~]# ls /opt/auth  data

    3)第三步:创建认证文件

    [root@host1 ~]# docker run --entrypoint \> htpasswd registry -Bbn zxhk 123 > /opt/auth/htpasswd[root@host1 ~]# echo "0">/proc/sys/net/ipv4/ip_forward

    4)第四步:创建容器

    [root@host1 ~]# docker run -d -p 6000:5000 \> --restart=always --name registry1 \> -v /opt/auth:/auth -v /opt/data:/tmp/registry \> -e "REGISTRY_AUTH=htpasswd" \> -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \> -e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" \> registry

    第二步:在其他节点使用这个registry

    1)修改docker配置文件,允许不安全的json

    [root@host2 ~]# vim /etc/docker/daemon.json 
    {"registry-mirrors": [    "https://registry.docker-cn.com",    "https://mzxx8xy8.mirror.aliyuncs.com"],"hosts": ["tcp://0.0.0.0:3725", "unix://var/run/docker.sock"],"insecure-registries": ["172.16.100.3:6000"]}

    2)给镜像打标签

    [root@host1 ~]# docker tag nginx:1.17-alpine 172.16.100.3:6000/nginx:v1-1

    3)登录registry

    [root@host1 ~]# docker login http://172.16.100.3:6000

    4)推送镜像

    [root@host1 ~]# docker push 172.16.100.3:6000/nginx:v1-1
镜像 文件 节点 配置 推送 官方 方法 制作 标签 组件 服务 安全 容器 用户 目录 第三方 阿里 不用 内容 名称 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 廊坊市软件开发公司有哪些 服务器性能最好的显卡 非关系型数据库的技术特点 渠道厉害的互联网科技公司 网络安全知识 新闻稿 景安免费数据库 科技软件开发公司简介 重视网络安全的英文 硬件和软件开发哪个更难 丽江计算机网络技术专业报名 如何准备软件开发面试问题 20m云服务器能在线多少人 黑客和网络技术区别 普洱市网络安全宣传周是什么 h3c服务器uid是什么意思 数据库怎么放到服务器 怎么看笔记本服务器端登录密码 网络安全专业中国最好的学校 计算机二级网络技术是啥 网络安全 北斗概念 scum租服务器教程2021 网络技术经济化 一般的数据库安全级别到 网络技术学院能考研吗 优势的企业内网网络安全 服务器主机能安装win8吗 网络安全工程师的报考条件 上海公共网络安全先进集体 广州大一互联网络科技有限公司 死亡边境2服务器选择
0