• Installing harbor-2.6.2 on openEuler


    一、Installation harbor-2.6.2 on openEuler

    1 地址

    2 Harbor 安装条件

    部署Harbor的最低硬件和软件配置:https://goharbor.io/docs/2.0.0/install-config/installation-prereqs

    2.1 Hardware

    The following table lists the minimum and recommended hardware configurations for deploying Harbor.

    Resource Minimum Recommended
    CPU 2 CPU 4 CPU
    Mem 4 GB 8 GB
    Disk 40 GB 160 GB

    2.2 Software

    The following table lists the software versions that must be installed on the target host.

    Software Version Description
    Docker engine Version 17.06.0-ce+ or higher For installation instructions, see Docker Engine documentation
    Docker Compose Version 1.18.0 or higher For installation instructions, see Docker Compose documentation
    Openssl Latest is preferred Used to generate certificate and keys for Harbor

    2.3 Network ports

    Harbor requires that the following ports be open on the target host.

    Port Protocol Description
    443 HTTPS Harbor portal and core API accept HTTPS requests on this port. You can change this port in the configuration file.
    4443 HTTPS Connections to the Docker Content Trust service for Harbor. Only required if Notary is enabled. You can change this port in the configuration file.
    80 HTTP Harbor portal and core API accept HTTP requests on this port. You can change this port in the configuration file.

    3 docker 和 docker-compose 安装在底部!

     

    二、离线安装 Harbor

    1 wget 下载

    mkdir /opt/software && cd /opt/software
    wget https://github.com/goharbor/harbor/releases/download/v2.6.2/harbor-offline-installer-v2.6.2.tgz

    2 解压

    tar -zxvf /opt/software/harbor-offline-installer-v2.6.2.tgz -C /opt && cd /opt/harbor && ll
    total 774M
    -rw-r--r-- 1 root root 3.6K Nov  9 17:35 common.sh
    -rw-r--r-- 1 root root 774M Nov  9 17:36 harbor.v2.6.2.tar.gz
    -rw-r--r-- 1 root root  11K Nov  9 17:35 harbor.yml.tmpl
    -rwxr-xr-x 1 root root 3.1K Nov  9 17:35 install.sh
    -rw-r--r-- 1 root root  12K Nov  9 17:35 LICENSE
    -rwxr-xr-x 1 root root 1.9K Nov  9 17:35 prepare

    最主要的是 harbor.yml.tmpl和 install.sh ,分别是配置文件和安装执行文件。

    3 修改配置文件

    ### 备份一下
    cp /opt/harbor/harbor.yml.tmpl /opt/harbor/harbor.yml
    
    ### 修改配置文件
    vim /opt/harbor/harbor.yml
    5 hostname: 114.116...
    10 port: 8084
    34 harbor_admin_password: root
    39 password: root123
    47 data_volume: /opt/harbor/data
    131 location: /var/log/harbor
    
    ### 创建数据和日志目录
    mkdir /opt/harbor/data
    mkdir /var/log/harbor

    4 修改daemon

    添加http的通信地址,docker默认使用https进行通信,如果配置了https协议就不需要添加。

    cat > /etc/docker/daemon.json << EOF
    {
        "registry-mirrors": [
          "https://registry.docker-cn.com",
          "https://docker.mirrors.ustc.edu.cn",
          "https://dockerhub.azk8s.cn",
          "http://hub-mirror.c.163.com"
        ],
        "experimental": true,
        "exec-opts": ["native.cgroupdriver=systemd"],
        "log-driver": "json-file",
        "log-opts": {
            "max-size": "100m"
        },
        "insecure-registries": ["114.116...:8084"]
    }
    EOF

    5 重新加载配置和重启docker

    systemctl daemon-reload && systemctl restart docker

    6 执行部署脚本

    /opt/harbor/install.sh
    
    ### 查看进程
    ps -ef |grep harbor
    
    ### 查看镜像
    docker images
    
    ### 查看镜像启动
    docker ps -a

    7 登陆 Harbor

    服务器 IP:8084

    默认用户名:admin 密码:root

    8 命令行登陆 docker

    docker info
    docker login 114.116...:8084

    三、测试上传和下载

    harbor创建项目

    项目--->新建项目--->项目名称--->镜像仓库

    2 对需要推送的镜像签名

    docker pull tomcat
    docker images
    
    ### tomcat镜像设置标签
    docker tag tomcat:latest 114.116...:8084/iyuyixyz/tomcat:latest
    docker push 114.116...:8084/iyuyixyz/tomcat:latest

    推送成功!

    四、harbor的停止与启动

    cd /opt/harbor
    ### 停止
    docker-compose stop
    ### 启动(第一次需要使用 up -d)
    docker-compose start
    
    ### 如果 Harbor 已在运行,请停止并删除现有实例。
    ### 数据保留在文件系统中(慎用)
    docker-compose down
    ### 创建并启动
    docker-compose up -d

     

    X、One Step Success

    1 /opt/harbor/install.sh harbor 安装日志

    查看代码
    [root@ecs-65685 ~]# /opt/harbor/install.sh
    
    [Step 0]: checking if docker is installed ...
    
    Note: docker version: 18.09.0
    
    [Step 1]: checking docker-compose is installed ...
    
    Note: docker-compose version: 2.10.2
    
    [Step 2]: loading Harbor images ...
    93d5db33d7f0: Loading layer [==================================================>]  37.72MB/37.72MB
    fed5229d083f: Loading layer [==================================================>]  8.902MB/8.902MB
    60993d7b1dd7: Loading layer [==================================================>]  3.584kB/3.584kB
    dcfafa86c82f: Loading layer [==================================================>]   2.56kB/2.56kB
    8eecc685f414: Loading layer [==================================================>]  102.3MB/102.3MB
    d93c6405d04a: Loading layer [==================================================>]  103.1MB/103.1MB
    Loaded image: goharbor/harbor-jobservice:v2.6.2
    a279a640c793: Loading layer [==================================================>]  6.287MB/6.287MB
    4f9d6222bbfe: Loading layer [==================================================>]  4.096kB/4.096kB
    55ce939e7c9a: Loading layer [==================================================>]  3.072kB/3.072kB
    a631cda93151: Loading layer [==================================================>]    186MB/186MB
    6fe15b823e2b: Loading layer [==================================================>]  12.87MB/12.87MB
    48c9bf72ec70: Loading layer [==================================================>]  199.6MB/199.6MB
    Loaded image: goharbor/trivy-adapter-photon:v2.6.2
    a9c145b6d823: Loading layer [==================================================>]  5.759MB/5.759MB
    7493dee46b78: Loading layer [==================================================>]  90.88MB/90.88MB
    531fd3669887: Loading layer [==================================================>]  3.072kB/3.072kB
    8bf93a9c7cac: Loading layer [==================================================>]  4.096kB/4.096kB
    697af810c7b0: Loading layer [==================================================>]  91.67MB/91.67MB
    Loaded image: goharbor/chartmuseum-photon:v2.6.2
    565c6d1e1338: Loading layer [==================================================>]  119.9MB/119.9MB
    070770563b0d: Loading layer [==================================================>]  3.072kB/3.072kB
    1cbd1219edb1: Loading layer [==================================================>]   59.9kB/59.9kB
    1eafa56427f8: Loading layer [==================================================>]  61.95kB/61.95kB
    Loaded image: goharbor/redis-photon:v2.6.2
    b1e37b42b3c0: Loading layer [==================================================>]  119.1MB/119.1MB
    Loaded image: goharbor/nginx-photon:v2.6.2
    0242e94056b7: Loading layer [==================================================>]  5.754MB/5.754MB
    f25460e36589: Loading layer [==================================================>]  8.735MB/8.735MB
    0854e8369d2a: Loading layer [==================================================>]  14.47MB/14.47MB
    1d58fd938f61: Loading layer [==================================================>]  29.29MB/29.29MB
    bbf9db741c3d: Loading layer [==================================================>]  22.02kB/22.02kB
    41ea5b5c915c: Loading layer [==================================================>]  14.47MB/14.47MB
    Loaded image: goharbor/notary-signer-photon:v2.6.2
    1a91031428df: Loading layer [==================================================>]  8.902MB/8.902MB
    3b0b5cc72c70: Loading layer [==================================================>]  3.584kB/3.584kB
    773ad3349c8a: Loading layer [==================================================>]   2.56kB/2.56kB
    39140cab076f: Loading layer [==================================================>]  83.92MB/83.92MB
    6c80f545b0fa: Loading layer [==================================================>]  5.632kB/5.632kB
    0ccee37aa42e: Loading layer [==================================================>]  106.5kB/106.5kB
    756d72e6b8c7: Loading layer [==================================================>]  44.03kB/44.03kB
    01a12d2708e6: Loading layer [==================================================>]  84.87MB/84.87MB
    eab188b4f0ed: Loading layer [==================================================>]   2.56kB/2.56kB
    Loaded image: goharbor/harbor-core:v2.6.2
    3aecbbff620d: Loading layer [==================================================>]  1.097MB/1.097MB
    3ee789a1e97c: Loading layer [==================================================>]  5.888MB/5.888MB
    285f58d22327: Loading layer [==================================================>]    169MB/169MB
    b47f4e789504: Loading layer [==================================================>]  16.98MB/16.98MB
    e8b4a74e7102: Loading layer [==================================================>]  4.096kB/4.096kB
    52bc97105e75: Loading layer [==================================================>]  6.144kB/6.144kB
    21cad868f5ac: Loading layer [==================================================>]  3.072kB/3.072kB
    6b24213c30fd: Loading layer [==================================================>]  2.048kB/2.048kB
    54dd774f4fcd: Loading layer [==================================================>]   2.56kB/2.56kB
    8fcc4e1141e7: Loading layer [==================================================>]   2.56kB/2.56kB
    47e81a37ed9a: Loading layer [==================================================>]   2.56kB/2.56kB
    15a2f5707a75: Loading layer [==================================================>]  8.704kB/8.704kB
    Loaded image: goharbor/harbor-db:v2.6.2
    b87a3132dc28: Loading layer [==================================================>]  5.759MB/5.759MB
    099c3879eab4: Loading layer [==================================================>]  4.096kB/4.096kB
    e111d5399557: Loading layer [==================================================>]  17.11MB/17.11MB
    0339872ecc4b: Loading layer [==================================================>]  3.072kB/3.072kB
    28d42c5fb14d: Loading layer [==================================================>]  29.71MB/29.71MB
    a6e47445b2a9: Loading layer [==================================================>]  47.61MB/47.61MB
    Loaded image: goharbor/harbor-registryctl:v2.6.2
    dc8141f6851b: Loading layer [==================================================>]  8.902MB/8.902MB
    98b4e2589226: Loading layer [==================================================>]  25.08MB/25.08MB
    b413ead94415: Loading layer [==================================================>]  4.608kB/4.608kB
    2c8d3d788084: Loading layer [==================================================>]  25.88MB/25.88MB
    Loaded image: goharbor/harbor-exporter:v2.6.2
    393d5a0ffc78: Loading layer [==================================================>]  43.85MB/43.85MB
    a93c9af803e4: Loading layer [==================================================>]  65.97MB/65.97MB
    7d77c2b336d0: Loading layer [==================================================>]  18.28MB/18.28MB
    a023a4db994f: Loading layer [==================================================>]  65.54kB/65.54kB
    938defed7f01: Loading layer [==================================================>]   2.56kB/2.56kB
    40a257e6076f: Loading layer [==================================================>]  1.536kB/1.536kB
    0a9ee117d49e: Loading layer [==================================================>]  12.29kB/12.29kB
    fee3e00ceac7: Loading layer [==================================================>]  2.613MB/2.613MB
    aa7a1d37a974: Loading layer [==================================================>]  379.9kB/379.9kB
    Loaded image: goharbor/prepare:v2.6.2
    43e329977d55: Loading layer [==================================================>]  5.759MB/5.759MB
    cd7f664a365e: Loading layer [==================================================>]  4.096kB/4.096kB
    d52491a2b6aa: Loading layer [==================================================>]  3.072kB/3.072kB
    96c88da130e9: Loading layer [==================================================>]  17.11MB/17.11MB
    3ed947e61e01: Loading layer [==================================================>]   17.9MB/17.9MB
    Loaded image: goharbor/registry-photon:v2.6.2
    c326200729cd: Loading layer [==================================================>]  5.754MB/5.754MB
    dddf8a3ea2da: Loading layer [==================================================>]  8.735MB/8.735MB
    64881611b8c7: Loading layer [==================================================>]  15.88MB/15.88MB
    e8316cf8a6f4: Loading layer [==================================================>]  29.29MB/29.29MB
    a36ddfae8822: Loading layer [==================================================>]  22.02kB/22.02kB
    071790bc488e: Loading layer [==================================================>]  15.88MB/15.88MB
    Loaded image: goharbor/notary-server-photon:v2.6.2
    02fbd82c1ad9: Loading layer [==================================================>]  119.1MB/119.1MB
    4cb31a91fcbf: Loading layer [==================================================>]  7.538MB/7.538MB
    5c4e30d33b60: Loading layer [==================================================>]  1.185MB/1.185MB
    Loaded image: goharbor/harbor-portal:v2.6.2
    f0b226869da1: Loading layer [==================================================>]  126.9MB/126.9MB
    375103145f01: Loading layer [==================================================>]  3.584kB/3.584kB
    5cf0e3f47476: Loading layer [==================================================>]  3.072kB/3.072kB
    67b68a640c0f: Loading layer [==================================================>]   2.56kB/2.56kB
    d1537b9cab8f: Loading layer [==================================================>]  3.072kB/3.072kB
    fccaf06d29a5: Loading layer [==================================================>]  3.584kB/3.584kB
    02d47852b759: Loading layer [==================================================>]  20.99kB/20.99kB
    Loaded image: goharbor/harbor-log:v2.6.2
    
    
    [Step 3]: preparing environment ...
    
    [Step 4]: preparing harbor configs ...
    prepare base dir is set to /opt/harbor
    WARNING:root:WARNING: HTTP protocol is insecure. Harbor will deprecate http protocol in the future. Please make sure to upgrade to https
    Generated configuration file: /config/portal/nginx.conf
    Generated configuration file: /config/log/logrotate.conf
    Generated configuration file: /config/log/rsyslog_docker.conf
    Generated configuration file: /config/nginx/nginx.conf
    Generated configuration file: /config/core/env
    Generated configuration file: /config/core/app.conf
    Generated configuration file: /config/registry/config.yml
    Generated configuration file: /config/registryctl/env
    Generated configuration file: /config/registryctl/config.yml
    Generated configuration file: /config/db/env
    Generated configuration file: /config/jobservice/env
    Generated configuration file: /config/jobservice/config.yml
    Generated and saved secret to file: /data/secret/keys/secretkey
    Successfully called func: create_root_cert
    Generated configuration file: /compose_location/docker-compose.yml
    Clean up the input dir
    
    
    Note: stopping existing Harbor instance ...
    
    
    [Step 5]: starting Harbor ...
    [+] Running 10/10
     ⠿ Network harbor_harbor        Created                                                                                           0.0s
     ⠿ Container harbor-log         Started                                                                                           0.5s
     ⠿ Container redis              Started                                                                                           0.8s
     ⠿ Container harbor-portal      Started                                                                                           1.0s
     ⠿ Container registry           Started                                                                                           1.0s
     ⠿ Container harbor-db          Started                                                                                           1.1s
     ⠿ Container registryctl        Started                                                                                           1.1s
     ⠿ Container harbor-core        Started                                                                                           1.2s
     ⠿ Container nginx              Started                                                                                           1.6s
     ⠿ Container harbor-jobservice  Started                                                                                           1.7s
    ✔ ----Harbor has been installed and started successfully.----

     

    Y、Error message

    1 绑定源路径不存在

    Error response from daemon: invalid mount config for type "bind": bind source path does not exist: /var/log/harbor/

    解决

    mkdir /var/log/harbor/

    2 权限被拒绝

    nginx: [emerg] open() "/etc/nginx/nginx.conf" failed (13: Permission denied)

    解决

    ### -^-

     

    Z、Related Links

    Installation docker-20.10.12 on CentOS 7.9:https://www.cnblogs.com/huaxiayuyi/p/16775236.html

    Installation docker on openEuler:https://www.cnblogs.com/huaxiayuyi/p/16894371.html

    Installation docker-compose on CentOS 7.9:https://www.cnblogs.com/huaxiayuyi/p/16775728.html

    Installation harbor-2.6.2 on CentOS 8.3:https://www.cnblogs.com/huaxiayuyi/p/16894018.html

     

  • 相关阅读:
    【漏洞复现】ActiveMQ Fileserver远程代码执行漏洞
    apache-atlas-hbase-bridge-源码分析
    操作系统 第二章 进程管理:进程与线程、处理机调度
    IDEA的下载和安装
    Jmeter性能测试 -1
    SM59/SE01/TR 请求号检查工具,不用传到正式区,开发环境即可
    Network(一)计算机网络介绍
    电力系统可视化——比PowerWorld还精彩(Matlab实现)
    火车旅客信息网上管理系统
    【Java 进阶篇】Session 使用详解
  • 原文地址:https://www.cnblogs.com/huaxiayuyi/p/16897413.html