前言

网络上对Harbor相关的资料真是少之又少,基本上都是教怎么安装,对于Harbor的原理讲解比较少,今天更新一篇 harbor.yml 配置的文章,有图有真相,看看学起来~
各位小伙伴们如果有不清楚地方,评论区欢迎讨论😏
备注:目录有每个参数索引,方便查阅~

参数详解

下面跟着小涛,手把手从头认识每个参数配置,再也不用担心不认识Habor配置了😉

hostname

配置Harbor服务的网络访问地址;可将其配置当前环境IP地址和主机域名;
注意:不要配置成 127.0.0.1localhost,否则除本机外Harbor无法被别的节点访问
在这里插入图片描述

HTTP和HTTPS

配置Harbor的网络访问协议,默认是https;
注意:如果安装Notary组件,必须将Harbor网络访问协议配置为HTTPS
配置HTTPS时需要提供SSL/TLS证书,并配置给 certificateprivate_key 选项(可自签证书)

port: 网络端口号,默认443
certificate: SSL/TLS证书文件的本机位置
private_key: 私钥文件的本机位置

在这里插入图片描述

附:HTTP协议,把HTTPS配置注释即可,如下所示

#https:
#  # https port for harbor, default is 443
#  port: 443
#  # The path of cert and key files for nginx
#  certificate: /data/harbor/cert/hub.dbatao.com.crt
#  private_key: /data/harbor/cert/hub.dbatao.com.key

在这里插入图片描述

internal_tls

配置Harbor各个模块/组件的TLS通信,默认情况下,Harbor各个组件(harbor-core、harbor-jobservice、harbor-portal、registry、registryctl 等)之间通信都基于HTTP。
但为了安全,生成环境建议开启TLS通信(若需开启,去掉配置文件的注释部分即可)

# Uncomment following will enable tls communication between all harbor components
internal_tls:
  # set enabled to true means internal tls is enabled
  enabled: true		#表示TLS是开启状态
  # put your cert and key files on dir
  dir: /etc/harbor/tls/internal		#存放各组件证书+私钥文件路径

在这里插入图片描述

harbor_admin_password

配置Harbor管理员的密码,默认值:Harbor12345
注意:此项用于管理员登陆Harbor,仅在第一次启动有效,启动后更改不再生效。
在这里插入图片描述

database

配置Harbor内置数据库(PG数据库)

password: 			#数据库管理员密码,默认为root123
max_idle_conns:		#Harbor组件连接数据库的最大空闲连接数
max_open_conns:		#Harbor组件连接数据库的最大连接数,为小于0的整数时,连接数无限制

在这里插入图片描述

data_volume

配置Harbor的本地数据存储,默认为/data目录,存放的数据有:Artifact文件、数据库数据库、缓存数据等
在这里插入图片描述

storage_service

配置外置存储。Harbor默认使用本地存储,若需外部存储,则去掉注释部分

ca_bundle:		#CA的存放路径,Harbor将该路径下的文件注入trust store中(log、database、reids、notary除外)
外置存储类型: 			#包含filesystem、azure、s3、swift、oss(默认:filesystem)

提示:使用外部存储,建议查看 云厂商官网文档
在这里插入图片描述
这里我用了s3的方法存储

clair

配置镜像扫描工具Clair;
updaters_interval 是Clair抓取CVE数据的时间间隔(单位:小时)
注意:设置为0时,关闭数据抓取
在这里插入图片描述

trivy

配置镜像扫描工具 Trivy

ignore_unfixed:		#是否忽略无修复的漏洞,默认为false
skip_update:		#是否关闭Trivy从GitHub数据源下载数据的功能,默认值false
insecure:		#是否忽略Registry证书验证,默认值false
github_token:		#Trivy从数据源GitHub下载数据访问的Token

在这里插入图片描述

jobservice

配置jobservice组件,功能:执行异步任务
max_job_workers 为最大job的执行单元数,默认值:10
在这里插入图片描述

notification

配置事件通知
webhook_job_max_retry:为事件通知失败的最大重试次数,默认值也是10
在这里插入图片描述

chart

配置ChartMuseum组件
absolute_url:使ChartMuseum组件时,客户端获取Chart的index.yaml中包含的url是否为绝对路径
若不配置该项,返回相对路径
在这里插入图片描述

log

配置日志

lever: 		#日志级别
local:			#本地日志配置
	rotate_count:		#日志文件在删除前的最大轮询次数,默认值50【设置为0时将不启用轮回】
	rotate_size:		#日志文件轮询值,默认值200MB【日志文件大小超过设置的阈值后进行轮转】
	location:		#日志文件的本地存储路径

external_endpoint:
	protocol:		#外置日志的传输协议,支持UDP和TCP,默认为TCP
	host:		#外置日志服务的网络地址
	port:		#外置日志服务的网络端口

在这里插入图片描述

_version

用于migrator检测.cfg文件的版本,勿修改!
在这里插入图片描述

external_database

外置数据库配置(Harbor 2.0.0 版本后只支持PG)
注意:外置数据库需要额外自己创建

harbor:		#Harbor的数据库配置
	host:			#数据库的连接地址
	port:			#数据库端口号
	db_name:		#数据库的name
	username:		#连接数据库的用户名
	password:		#密码
	ssl_mode:		#安全模式
	max_idle_conns:		#组件连接数据库的最大空闲连接数
	max_open_conns:		#组件连接数据库的最大连接数据,小于0的整数时,连接无限制

clair:		#clair数据库配置
	host:		#和上面相同
	port:
	db_name:
	username:
	password:
	ssl_mode:

notary_signer:		#Notary Signer的数据库配置
	host:		#和上面相同
	port:
	db_name:
	username:
	password:
	ssl_mode:

notary_server:		#Notary Server的数据库配置
	host:		#和上面相同
	port:
	db_name:
	username:
	password:
	ssl_mode:

在这里插入图片描述

external_redis

外置Redis数据库配置
注意:数据库索引值不可以被设置为0,因为其被Harbor的Core组件单独占用

host:		#外置Redis的连接地址
port:		#端口
password:		#密码
registry_db_index:		#Registry组件的数据库索引值
jobservice_db_index:		#JobService组件的数据索引值
chartmuseum_db_index:		#ChartMuseum组件的数据索引值
clair_db_index:		#Clair组件的数据索引值
trivy_db_index:		#Trivy组件的数据索引值
idle_timeout_seconds:		#空闲连接时间,设置为0时,空闲的连接不好被关闭

在这里插入图片描述

uaa

配置UAA
ca_file: UAA服务自签名证书的路径
在这里插入图片描述

proxy

配置反向代理;Harbor在内网环境运行时,可使用反向代理访问外网;
注意:代理配置不影响Harbor各个组件之间通信

proxy:		#网络代理服务地址
no_proxy:		#不使用网络代理服务的域名
components:		#默认代理服务配置应用在 Core、JobService、Clair、Trivy的网络中访问,如果想关闭任一组件的代理服务,删除该组件name即可
				#注意:如需要Artifact复制功能应用网络代理,core、JobService必须在该列表中

在这里插入图片描述


欢迎评论区讨论~
写作不易,大家点赞、收藏、关注一波 (。・∀・)ノ゙嗨

GitHub 加速计划 / ha / harbor
23.24 K
4.68 K
下载
Harbor 是一个开源的容器镜像仓库,用于存储和管理 Docker 镜像和其他容器镜像。 * 容器镜像仓库、存储和管理 Docker 镜像和其他容器镜像 * 有什么特点:支持多种镜像格式、易于使用、安全性和访问控制
最近提交(Master分支:3 个月前 )
29bd0947 * fix robot deletion event Signed-off-by: wang yan <wangyan@vmware.com> * resolve comments Signed-off-by: wang yan <wangyan@vmware.com> --------- Signed-off-by: wang yan <wangyan@vmware.com> 10 天前
05233b07 fix: event-based replication deletion not work when policy with label filter Fix event-based replication deletion on remote registry not triggered when the replication policy configured the label filter. Signed-off-by: chlins <chlins.zhang@gmail.com> 10 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐