Installing harbor-2.6.2 on openEuler

一、Installing harbor-2.6.2 on openEuler

1 地址

Installing harbor-2.6.2 on openEuler

Installing harbor-2.6.2 on openEuler

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

Installing harbor-2.6.2 on openEuler

8 命令行登陆 docker

docker info docker login 114.116...:8084

Installing harbor-2.6.2 on openEuler

三、测试上传和下载

harbor创建项目

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

Installing harbor-2.6.2 on openEuler

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

Installing harbor-2.6.2 on openEuler

推送成功!

Installing harbor-2.6.2 on openEuler

四、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: 20.10.16  [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

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

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

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

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

 

发表评论

相关文章