栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Harbor安装与配置

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Harbor安装与配置

Harbor安装与配置

官方文档:Harbor docs | Harbor Installation and Configuration (goharbor.io)

一.安装前提条件: 硬件
资源最低推荐
CPU2C4C
内存4G8G
硬盘40G160G
软件
软件版本描述
dockerv17.0.6-ce+安装参考 安装 Docker 引擎|Docker 文档
docker composev1.18.0+安装参考 Install Docker Compose | Docker Documentation
Openssllatest用于为 Harbor 生成证书和密钥
端口

需要开放端口

端口协议描述
443HTTPS网页https访问端口
4443HTTPS与 Harbor 的 Docker Content Trust 服务的连接。仅当启用了公证时才需要
80HTTP网页访问端口
二.安装配置 1.安装Harbor

下载页面 Releases · goharbor/harbor · GitHub

1.下载解压

wget  https://github.com/goharbor/harbor/releases/download/v2.4.2/harbor-online-installer-v2.4.2.tgz

tar xvf harbor-online-installer-v2.4.2.tgz -C /usr/local/

2.相关文件介绍

# harbor配置文件模板
harbor.yml.tmpl  

# 首次安装需要先执行,会生成docekr-compose.yml文件
# 更新harbor配置文件后也需要执行此文件
prepare 

# 安装启动脚本
install.sh

# 容器启动相关配置文件目录
common

3.修改配置

cd /usr/local/harbor/
cp harbor.yml.tmpl harbor.yml
vi harbor.yml

###==== 修改以下参数

# 访问域名
hostname : my.harbor.com  



# 配置https证书路径
certificate: /data/cert/my.harbor.com.crt
private_key: /data/cert/my.harbor.com.key

# 管理员密码
harbor_admin_password: AdminPassword

database:
	# 设置pgsql管理员密码
	password: root123

# 存储路径
data_volume: /data

4.安装

cd /usr/local/harbor/

# 每次修改配置后都先执行此命令
./prepare

# 执行安装脚本
./install.sh
2.配置HTTPS 2.1 生成证书颁发机构证书
  1. 生成 CA 证书私钥
openssl genrsa -out ca.key 4096
  1. 生成 CA 证书
openssl req -x509 -new -nodes -sha512 -days 3650 
 -subj "/C=CN/ST=hubei/L=wuhan/O=test/OU=test/CN=my.harbor.com" 
 -key ca.key 
 -out ca.crt
2.2 生成服务器证书

证书通常包含一个文件和一个文件

.crt
.key
my.harbor.com.crt
my.harbor.com.key

1.生成私钥

openssl genrsa -out my.harbor.com.key 4096

2.生成证书签名请求 (CSR)

openssl req -sha512 -new 
    -subj "/C=CN/ST=hubei/L=wuhan/O=test/OU=test/CN=my.harbor.com" 
    -key my.harbor.com.key 
    -out my.harbor.com.csr

3.生成 x509 v3扩展文件

无论您使用FQDN还是IP地址连接到Harbor主机,都必须创建此文件,以便可以为您的Harbor主机生成符合主题备用名称(SAN)和x509 v3的证书扩展要求。替换DNS条目以反映您的域

cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names

[alt_names]
DNS.1=my.harbor.com
DNS.2=my.harbor
DNS.3=harbor
EOF

4.使用该v3.ext文件为您的Harbor主机生成证书

openssl x509 -req -sha512 -days 3650 
    -extfile v3.ext 
    -CA ca.crt -CAkey ca.key -CAcreateserial 
    -in my.harbor.com.csr 
    -out my.harbor.com.crt
2.3 提供证书给Harbor和Docker

生成文件后,需要提供给 Harbor 和 Docker,并重新配置 Harbor 使用证书

1.将服务器证书和密钥复制到 Harbor主机证书文件夹中

cp my.harbor.com.crt /data/cert/

cp my.harbor.com.key /data/cert/

2.转换my.harbor.com.crt为my.harbor.com.cert,供Docker使用

Docker守护程序将.crt文件解释为CA证书,并将.cert文件解释为客户端证书

openssl x509 -inform PEM -in my.harbor.com.crt -out my.harbor.com.cert

3.将服务器证书、密钥和 CA 文件复制到 Harbor 主机上的 Docker 证书文件夹中

cp my.harbor.com.cert /etc/docker/certs.d/my.harbor.com/

cp my.harbor.com.key /etc/docker/certs.d/my.harbor.com/

cp ca.crt /etc/docker/certs.d/my.harbor.com/

如果将默认nginx端口443映射到其他端口,请创建文件夹

/etc/docker/certs.d/my.harbor.com:port或/etc/docker/certs.d/harbor_IP:port

4.重新启动Docker Engine

systemctl restart docker
2.4 部署或重新配置Harbor

如果尚未部署 Harbor,需要配置harbor的yml文件中 hostname、https参数

如果已部署Harbor希望配置为HTTPS,执行以下步骤

  1. 运行 prepare 脚本以启用 HTTPS
./prepare
  1. Harbor正在运行,需要先停止并删除现有实例
docker-compose down -v

重新启动Harbor

docker-compose up -d
三.重置密码 修改密码

进入 harbor-db 容器内

docker exec -it harbor-db /bin/bash

登录 pgsql 操作

# 登录pgsql,默认密码为 root123
psql -h postgresql -d postgres -U postgres

# 切换到harbor所在数据库
c registry

# 查看 harbor_user 表
select * from harbor_user;

# 修改 admin 密码,修改为初始密码 Harbor12345
# 老版本操作, 但是v2.4版本无效
	#update harbor_user set password='a71a7d0df981a61cbb53a97ed8d78f3e',salt='ah3fdh5b7yxepalg9z45bu8zb36sszmr' where username='admin'; 
	
# v2.4版本操作
update harbor_user set salt='', password='' where username='admin'; 

# 退出
q
exit
重启服务
docker-compose down -v

docker-compose up -d
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/851180.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号