https 访问-快速部署 Harbor v2.3.1
快速部署 Harbor v2.3.1
最新版本为 v2.5.0 Harbor-ARM版本也在更新支持中.
harbor-arm 的支持
https://github.com/goharbor/harbor-arm
下载安装文件
#最新版本
wget https://github.com/goharbor/harbor/releases/download/v2.5.0/harbor-online-installer-v2.5.0.tgz
#部署版本
wget https://github.com/docker/compose/releases/download/1.29.2/docker-compose-Linux-x86_64
wget https://github.com/goharbor/harbor/releases/download/v2.5.0/harbor-online-installer-v2.5.0.tgz
部署安装
#解压harbor-online-installer-v2.5.0.tgz,拷贝docker-compose去/usr/bin目录
tar -zxf harbor-offline-installer-v2.3.1.tgz
cp -r docker-compose-Linux-x86_64 /usr/bin/docker-compose && chmod +x /usr/bin/docker-compose
生成证书
#创建证书目录,生成ca.key和ca.crt
mkdir -p /opt/myharbor && cd /opt/myharbor
openssl genrsa -out ca.key 2048
openssl req -x509 -new -nodes -key ca.key -subj "/CN=myharbor.ca.com" -days 5000 -out ca.crt
SAN 扩展
使用 openssl 生成带有 SAN 扩展的证书请求文件(CSR)
SAN(Subject Alternative Name) 是 SSL 标准 x509 中定义的一个扩展。使用了 SAN 字段的 SSL 证书,可以扩展此证书支持的域名,使得一个证书可以支持多个不同域名的解析。
#使用 openssl 生成带 SAN 扩展的证书请求文件(CSR)
openssl req -new -sha256 \
-key ca.key \
-subj "/C=CN/ST=Beijing/L=Beijing/O=UnitedStack/OU=Devops/CN=myharbor.k8s.local" \
-reqexts SAN \
-config <(cat /etc/pki/tls/openssl.cnf \
<(printf "[SAN]\nsubjectAltName=DNS:myharbor.k8s.local,DNS:store.k8s.local")) \
-out myharbor.csr
查看证书请求文件的内容
openssl req -text -noout -in myharbor.csr
生成证书
openssl x509 -req -days 365000 \
-in myharbor.csr -CA ca.crt -CAkey ca.key -CAcreateserial \
-extfile <(printf "subjectAltName=DNS:myharbor.k8s.local,DNS:store.k8s.local") \
-out myharbor.crt
验证证书内容
openssl x509 -text -noout -in myharbor.crt
harbor配置文件配置证书路径
vim ~/harbor/harbor.yml
#内容
hostname: myharbor.com
https:
port: 443
certificate: /opt/myharbor/myharbor.crt
private_key: /opt/myharbor/ca.key
执行安装部署 harbor
./install.sh
部署后证书替换
#内容
hostname: myharbor.com
https:
port: 443
certificate: /opt/myharbor/myharbor.crt
private_key: /opt/myharbor/ca.key
harbor的nginx映射的cert目录,更新其中的证书
vi docker-compose.yml
....省略
volumes:
- ./common/config/nginx:/etc/nginx:z
- /data/secret/cert:/etc/cert:z
- type:bind
...
重启harbor
docker-compose restart proxy
docker-compose down
./prepare
docker-compose up -d