搭建企业镜像私服——Harbor

1、Harbor简介:

​ Harbor是为企业用户设计的私有化容器镜像仓库开源项目,包括了权限管理(RBAC)、LDAP、审计、安全漏洞扫描、镜

像验真、管理界面、自我注册、HA等企业必需的功能,同时针对中国用户的特点,设计镜像复制和中文支持等功能。

2、安装Harbor:

  1. 安装docker-compose

    # 下载docker-compose二进制执行文件
    sudo curl -L https://github.com/docker/compose/releases/download/1.29.1/docker-compose-Linux-x86_64 -o /usr/local/bin/docker-compose
    # 配置docker-compose二进制文件可执行权限
    sudo chmod +x /usr/local/bin/docker-compose
    # 测试docker-compose是否安装成功
    docker-compose version
    
  2. 下载Harbor安装包:

    wget https://github.com/goharbor/harbor/releases/download/v2.2.1/harbor-offline-installer-v2.2.1.tgz
    
  3. 解压Harbor安装包:

    tar -zxvf harbor-offline-installer-v2.2.1.tgz
    
  4. 查看Harbor目录结构:

  5. 修改harbor.yml配置:

    # vim harbor.yml
    hostname: 192.168.0.90               # 配置成本机ip
    http:
      port: 80                           # 默认端口号80
    harbor_admin_password: Harbon12345   # 默认管理员登录密码
    
  6. 执行prepare

    ./prepare
    
  7. 执行安装Harbor

    sh install.sh          # Harbor的启动是基于docker-compose实现,执行完此命令后即直接启动Harbor
    
  8. 访问Harbor

  9. Docker配置私服:

    # vim /etc/docker/daemon.json
    {
      # 配置阿里云公有镜像仓库
      "registry-mirrors": ["https://d3mf5ikh.mirror.aliyuncs.com"],
      # 配置私有镜像仓库
      "insecure-registries": ["192.168.1.90"]
    }
    :wq!                                        # 保存并退出
    systemctl restart docker                    # 重启docker服务
    
  10. Harbor启动、停止操作:

    docker-compose start 
    docker-compose stop 
    
  11. 将镜像推送到Harbor公有仓库仓库:

    # 创建公有库 pub  公开库下载镜像无需登录,上传镜像需要先登录
    # 登录Harbor
    docker login 192.168.1.90
    # 标记镜像
    docker tag SOURCE_IMAGE[:TAG] 192.168.1.90/pub/REPOSITORY[:TAG]
    docker tag gateway-service:latest 192.168.1.90/pub/gateway-service:1.0   # 示例# 推送镜像到当前项目
    docker push 192.168.1.90/pub/REPOSITORY[:TAG]docker push 192.168.1.90/pub/gateway-service:1.0                         # 示例 
    # 退出登录
    docker layout 192.168.1.90
    
  12. 将镜像推送到Harbor私有仓库:

    # 创建私有库 prv  私有库下载、上传镜像都需要先登录# 登录Harbor
    docker login 192.168.1.90
    # 标记镜像
    docker tag SOURCE_IMAGE[:TAG] 192.168.1.90/prv/REPOSITORY[:TAG]
    docker tag gateway-service:latest 192.168.1.90/prv/gateway-service:1.0   # 示例
    # 推送镜像到当前项目
    docker push 192.168.1.90/prv/REPOSITORY[:TAG]docker push 192.168.1.90/prv/gateway-service:1.0                         # 示例
    
  13. 下载Harbor公有库中的镜像:

    docker pull 192.168.1.90/pub/REPOSITORY[:TAG]
    
  14. 下载Harbor私有库中的镜像:

    docker login 192.168.1.90docker pull 192.168.1.90/prv/REPOSITORY[:TAG]
    

原文地址:https://www.cnblogs.com/xiaoshuzhagen/p/14713028.html