首先声明,盗帖可耻,我发现有人把我文章复制到百度文库,并设置vip下载,直接照搬别人的还牟利,恶心!!!
一、前言
先说下 为什么要写这篇文章。
工作需要部署harbor,于是百度了好多教程,发现教程里都是完美结尾,但是我的安装过程各种bug。
最后发现是他们都是漏了好多东西,对于没接触过的小白来说,并不友好。于是就有了这篇文章。
二、Harbor 安装先决条件
1、硬件条件
2、系统、软件条件
安装好docker
参考我之前的教程Ubuntu server18、20、22安装、部署Docker
三、安装Harbor
1、创建证书
a、创建一个保存证书的目录
mkdir -p /data/cert/
b、生成证书颁发机构证书
#生成 CA 证书私钥
sudo openssl genrsa -out ca.key 4096
#生成 CA 证书
openssl req -x509 -new -nodes -sha512 -days 3650 \
-subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=server.yin123.com" \
-key ca.key \
-out ca.crt
c、生成服务器证书
#生成 CA 证书私钥
sudo openssl genrsa -out server.yin123.com.key 4096
#生成证书签名请求 (CSR)
sudo openssl req -sha512 -new \
-subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=server.yin123.com" \
-key server.yin123.com.key \
-out server.yin123.com.csr
#生成 x509 v3 扩展文件
sudo vim v3.ext
v3.ext内容如下
authorityKeyIdentifier=keyid,issuer basicConstraints=CA:FALSE keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment extendedKeyUsage = serverAuth subjectAltName = @alt_names [alt_names] DNS.1=server.yin123.com DNS.2=yin123.com DNS.3=server
#使用该v3.ext文件Harbor 主机生成证书
sudo openssl x509 -req -sha512 -days 3650 \
-extfile v3.ext \
-CA ca.crt -CAkey ca.key -CAcreateserial \
-in server.yin123.com.csr \
-out server.yin123.com.crt
d、向 Harbor 和 Docker 提供证书
#将服务器证书和密钥复制到 Harbor 主机上的 certficates 文件夹中
cp server.yin123.com.crt /data/cert/
cp server.yin123.com.key /data/cert/
#转换crt为cert 供 Docker 使用
Docker 守护进程将.crt文件解释为 CA 证书,将.cert文件解释为客户端证书。
openssl x509 -inform PEM -in server.yin123.com.crt -out server.yin123.com.cert
#将服务器证书、密钥和 CA 文件复制到 Harbor 主机上的 Docker 证书文件夹中。必须先创建文件夹。
cp server.yin123.com.cert /etc/docker/certs.d/server.yin123.com/
cp server.yin123.com.key /etc/docker/certs.d/server.yin123.com/
cp ca.crt /etc/docker/certs.d/server.yin123.com/
#重启docker
systemctl restart docker
2、下载、安装harbor
可以去官网下载想要的版本,我这里以2.50版本为例。
tar xvf harbor-offline-installer-v2.5.0.tgz
a、复制修改配置文件
cp harbor.yml.tmpl harbor.yml
vim harbor.yml
修改相应参数,参考下图,可以修改成自己想要的
b、执行安装脚本
sudo ./install.sh
3、web访问,进行初始化
注意,此处不能用IP地址访问,ip访问会一直转圈!!!!!
必须通过域名访问才能出现登录界面,浏览器输入server.yin123.com
4、web使用,上传、拉取镜像
参考我的其他文章
原文链接:https://blog.csdn.net/qq_35002542/article/details/124745886