• 搭建Docker私有仓库


      前言:不断学习就是程序员的宿命

    1、环境准备

      服务器:centos7、内核5.6

      

     内核升级:

    yum update -y
    
    # 导入公钥
    rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org 
    
    # 安装7.x版本的ELRepo
    rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
    
    # 安装新版本内核
    yum --enablerepo=elrepo-kernel install kernel-lt -y
    
    Centos7.x 内核升级完毕后,需要修改内核的启动顺序
    vim /etc/default/grub
    
    GRUB_TIMEOUT=5
    GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
    GRUB_DEFAULT=saved        #把这里的saved改成0
    GRUB_DISABLE_SUBMENU=true
    GRUB_TERMINAL_OUTPUT="console"
    GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet net.ifnames=0"
    GRUB_DISABLE_RECOVERY="true"

      运行grub2-mkconfig命令来重新创建内核配置,命令是grub2-mkconfig -o /boot/grub2/grub.cfg,如下:

    grub2-mkconfig -o /boot/grub2/grub.cfg
    Generating grub configuration file ...
    Found linux image: /boot/vmlinuz-4.17.171-1.el7.elrepo.x86_64
    Found initrd image: /boot/initramfs-4.17.171-1.el7.elrepo.x86_64.img
    Found linux image: /boot/vmlinuz-3.10.0-693.2.2.el7.x86_64
    Found initrd image: /boot/initramfs-3.10.0-693.2.2.el7.x86_64.img
    Found linux image: /boot/vmlinuz-3.10.0-693.el7.x86_64
    Found initrd image: /boot/initramfs-3.10.0-693.el7.x86_64.img
    Found linux image: /boot/vmlinuz-0-rescue-f0f31005fb5a436d88e3c6cbf54e25aa
    Found initrd image: /boot/initramfs-0-rescue-f0f31005fb5a436d88e3c6cbf54e25aa.img
    done

    2、服务端搭建

      根据GitHub中issue:https://github.com/docker/distribution-library-image/issues/106,鄙人一直用最新的镜像,后续配置有问题,所以改用2.6.x

    # 下载 registry
    docker pull registry:2.6.2
    # 挂载相关的配置
    mkdir -p  /docker/registry/auth
    # 生成账号密码:msi msi123
    docker run --entrypoint htpasswd registry:latest -Bbn msi msi123  >> /docker/registry/auth/htpasswd
    # 设置配置文件
    mkdir -p  /docker/registry/config
    vim  /docker/registry/config/config.yml
    # 输入以下文件
    
    version: 0.1
    log:
      fields:
        service: registry
    storage:
      delete:
        enabled: true
      cache:
        blobdescriptor: inmemory
      filesystem:
        rootdirectory: /var/lib/registry
    http:
      addr: :5000
      headers:
        X-Content-Type-Options: [nosniff]
    health:
      storagedriver:
        enabled: true
        interval: 10s
    threshold: 3
    启动
    docker run -d -p 5005:5000 --restart=always  --name=registry 
    -v /docker/registry/config/:/etc/docker/registry/ 
    -v /docker/registry/auth/:/auth/ 
    -e "REGISTRY_AUTH=htpasswd" 
    -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" 
    -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd 
    -v /docker/registry/:/var/lib/registry/ 
    registry:2.6.2

    3、配置客户端

    vim /etc/hosts
    192.168.56.10 msi-registry
    
    ######登录
    docker login 192.168.56.10:5005
    
    # Error response from daemon: Get https://192.168.56.10:5005/v1/users/: dial tcp 192.168.56.10:5005: i/o timeout
    # 解决:https://blog.csdn.net/quanqxj/article/details/79479943
    # Error response from daemon: Get https://192.168.56.10:5005/v2/: http: server gave HTTP response to HTTPS client
    # 解决:
    # vim /etc/docker/daemon.json
    # 添加如下内容
    # {"insecure-registries":["msi-registry:5005","msi-registry"]}

    参考:https://blog.csdn.net/shida_csdn/article/details/78435971

  • 相关阅读:
    1133catalan数二维变种
    HDU2254 奥运 矩阵应用
    hdu1134大数+catalan数
    C#编写一个控制台应用程序,输入三角形或者长方形边长,计算其周长和面积并输出。
    简单工厂
    每日总结
    C#编写一个控制台应用程序,可根据输入的月份判断所在季节
    使用Java api对HBase 2.4.5进行增删改查
    C#编写程序,用 while 循环语句实现下列功能:有一篮鸡蛋,不止一个,有人两个两 个数,多余一个,三个三个数,多余一个,再四个四个地数,也多余一个,请问这篮鸡蛋至 少有多少个
    每日总结
  • 原文地址:https://www.cnblogs.com/rmxd/p/14392817.html
Copyright © 2020-2023  润新知