Harbor安装笔记

1、安装包下载
下载harbor-offline-installer-v版本号.tgz,下载地址为https://github.com/goharbor/harbor/releases
将安装包上传至服务器并解压
修改配置文件harbor/harbor.cfg,根据情况修改,hostname需要修改成IP或者域名,不能是127.0.0.1或localhost;访问协议(ui_url_protocol),默认是http,也可以设置https,如果设置https,则nginx ssl需要设置on
如果hostname配置为域名,并且在没有域名服务器的情况下,需要在/etc/hosts下添加映射
执行安装脚本:install.sh

相关命令:
启动Harbor
# docker-compose start
停止Harbor
# docker-comose stop
重启Harbor
# docker-compose restart
查看docker进程信息
# docker-compose  ps

相关参数介绍:
hostname:目标主机的主机名,用于访问UI和注册表服务。它应该是目标计算机的IP地址或完全限定域名(FQDN),例如192.168.1.10或reg.yourdomain.com。不要使用localhost或127.0.0.1用于主机名 - 注册表服务需要由外部客户端访问!
ui_url_protocol:(http或https。默认为http)用于访问UI和令牌/通知服务的协议。默认情况下,这是http。要设置https协议,请参阅使用HTTPS访问配置Harbor。
电子邮件设置:Harbor需要这些参数才能向用户发送“密码重置”电子邮件,并且只有在需要该功能时才需要。还有,千万注意,在默认情况下SSL连接是没有启用-如果你的SMTP服务器需要SSL,但不支持STARTTLS,那么你应该通过设置启用SSL email_ssl = TRUE。
email_server = smtp.mydomain.com
email_server_port = 25
email_username = sample_admin@mydomain.com
email_password = abc
email_from = admin \<sample_admin@mydomain.com\>
email_ssl = false
harbour_admin_password:管理员的初始密码。此密码仅在港口首次发布时生效。之后,将忽略此设置,并且应在UI中设置管理员的密码。请注意,默认用户名/密码为admin / Harbor12345。
auth_mode:使用的认证类型。默认情况下,它是db_auth,即凭据存储在数据库中。对于LDAP认证,请将其设置为ldap_auth。
ldap_url:LDAP端点URL(例如ldaps://ldap.mydomain.com)。 仅当auth_mode设置为ldap_auth时使用。
ldap_searchdn:具有搜索LDAP / AD服务器(例如uid=admin,ou=people,dc=mydomain,dc=com)的权限的用户的DN 。
ldap_search_pwd:由指定的用户的密码ldap_searchdn。
ldap_basedn:查找用户的基本DN,例如ou=people,dc=mydomain,dc=com。 仅当auth_mode设置为ldap_auth时使用。
ldap_filter:用于查找用户的搜索过滤器,例如(objectClass=person)。
ldap_uid:用于在LDAP搜索期间匹配用户的属性,可以是uid,cn,电子邮件或其他属性。
ldap_scope:用于搜索用户的范围,1-LDAP_SCOPE_BASE,2-LDAP_SCOPE_ONELEVEL,3-LDAP_SCOPE_SUBTREE。默认值为3。
db_password:用于db_auth的MySQL数据库的根密码。更改此密码以用于任何生产使用!
self_registration:(on或off。默认为on)启用/禁用用户注册自己的能力。禁用时,新用户只能由管理员用户创建,只有管理员用户才能在Harbor中创建新用户。 注意:当auth_mode设置为ldap_auth时,将始终禁用自注册功能,并且将忽略此标志。
use_compressed_js:(on或off。默认为on)对于生产使用,将此标志设置为on。在开发模式下,将其设置为off,以便可以单独修改js文件。
max_job_workers:(缺省值为3)作业服务中的最大复制worker数。对于每个图像复制作业,工作程序将存储库的所有标记同步到远程目标。增加此数量允许系统中更多的并发复制作业。但是,由于每个工人消耗一定量的网络/ CPU / IO资源,请根据主机的硬件资源仔细选择此属性的值。
token_expiration:令牌服务创建的令牌的过期时间(以分钟为单位),默认为30分钟。
verify_remote_cert:(on或off。默认为on)此标志确定当Harbor与远程注册表实例通信时是否验证SSL / TLS证书。将此属性设置为关闭将绕过SSL / TLS验证,这通常在远程实例具有自签名或不受信任的证书时使用。
customize_crt:(on或off。默认为on)当此属性打开时,prepare脚本创建用于生成/验证注册表令牌的私钥和根证书。以下属性:crt_country,crt_state,crt_location,crt_organization,crt_organizationalunit,crt_commonname,crt_email用作生成密钥的参数。当密钥和根证书由外部源提供时,将此属性设置为off。

2、协议由http转https
具体操作如下(myharbor为hostname):

#修改Harbor.cfg配置文件
vi Harbor.cfg
ui_url_protocol = https
ssl_cert = /data/cert/myharbor.crt
ssl_cert_key = /data/cert/myharbor.key


mkdir -p /data/cert
cd /data/cert

openssl genrsa -out ca.key 4096
openssl req -x509 -new -nodes -sha512 -days 3650 -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=myharbor" -key ca.key -out ca.crt
openssl genrsa -out myharbor.key 4096
openssl req -sha512 -new -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=myharor" -key myharbor.key -out myharbor.csr

#编辑v3.ext,添加如下内容
vi v3.ext
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names

[alt_names]
DNS.1=myharbor
DNS.2=harbor
DNS.3=ks-allinone

openssl x509 -req -sha512 -days 3650 -extfile v3.ext -CA ca.crt -CAkey ca.key -CAcreateserial -in myharbor.csr -out myharbor.crt

openssl x509 -inform PEM -in myharbor.crt -out myharbor.cert

cp myharbor.crt /etc/pki/ca-trust/source/anchors/myharbor.crt
update-ca-trust

mkdir -p /etc/docker/certs.d/myharbor/
cp myharbor.cert /etc/docker/certs.d/myharbor/
cp myharbor.key /etc/docker/certs.d/myharbor/
cp ca.crt /etc/docker/certs.d/myharbor/

# 重启docker
systemctl restart docker.service

# 停止
docker-compose down -v

# 重新生成配置文件
./prepare --with-notary --with-clair --with-chartmuseum

# 启动
docker-compose up -d

#登录harbor,输入用户名密码
docker login myharbor

#如果报Error response from daemon: Get https://myharbor/v2/: dial tcp IP(实际IP地址):443: connect: connection refused 可尝试重新安装Harbor(install.sh)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值