ljzsdut
GitHubToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage

Harbor镜像仓库部署

v1.10.1参考文档

https://goharbor.io/docs/2.3.0/install-config/

ToivTv-1585550255985

安装docker-compose

yum install -y docker-compose

修改harbor配置文件

[root@bigdata-pm services]# tar xf harbor-offline-installer-v1.10.1.tgz 
[root@bigdata-pm services]# ll harbor/
total 662120:
-rw-r--r-- 1 root root      3398 Feb 10 14:18 common.sh
-rw-r--r-- 1 root root 677974489 Feb 10 14:19 harbor.v1.10.1.tar.gz
-rw-r--r-- 1 root root      5882 Feb 10 14:18 harbor.yml
-rwxr-xr-x 1 root root      2284 Feb 10 14:18 install.sh
-rw-r--r-- 1 root root     11347 Feb 10 14:18 LICENSE
-rwxr-xr-x 1 root root      1749 Feb 10 14:18 prepare

根据需要,对harbor.yml进行自定义,具体配置可以参考v1.10.1参考文档

常用的配置:

  • data_volume:宿主机上的数据目录

  • log.local.location:宿主机上的日志文件目录

  • 监听端口

  • external_database:使用外部的pg数据库

安装

拷贝配置文件样板

cp harbor.yml.tmpl harbor.yml

img

并注释掉https目前先不配置证书

每次修改配置文件的后都要重新执行prepare否则配置文件不生效

sudo ./install.sh

默认的Harbor安装不包括Notary、Clair、Chart Repository服务。

如果要安装上面的服务中的一个或多个,可以使用如下参数:

sudo ./install.sh --with-notary --with-clair --with-chartmuseum

管理harbor生命周期

成功运行install.sh后,会生成docker-compose.yml文件,之后可以使用docker-compose对harbor进行管理。

创建并启动容器

[root@bigdata-pm harbor]# docker-compose up -d

关闭容器

[root@bigdata-pm harbor]# docker-compose stop

启动容器

[root@bigdata-pm harbor]# docker-compose start

关闭并删除容器

[root@bigdata-pm harbor]# docker-compose down -v

重新配置harbor

 如果要修改harbor.yml中的配置,需要先删除容器。数据是持久化的,删除容器不会丢失。

$ sudo docker-compose down -v
$ vim harbor.yml
$ sudo prepare  #进行对docker-compose.yml进行配置修改
$ sudo docker-compose up -d

Using nginx or Load Balancing

When setting up Harbor behind an nginx proxy or elastic load balancing, look for the following line in common/config/nginx/nginx.conf and, if the proxy already has similar settings, remove it from the sections location /, location /v2/ and location /service/.

proxy_set_header X-Forwarded-Proto $scheme;

X-Forwarded-Proto(XFP)报头是用于识别协议(HTTP 或 HTTPS),其中使用的客户端连接到代理或负载平衡器一个事实上的标准报头。您的服务器访问日志包含在服务器和负载平衡器之间使用的协议,但不包括客户端和负载平衡器之间使用的协议。要确定客户端和负载平衡器之间使用的协议,X-Forwarded-Proto可以使用请求标头。

环境信息

http://10.15.9.220:8080/