Harbor镜像仓库安装过程记录
前言:初接触harbor仓库,仅适合个人
操作系统:CentOS Linux release 7.3.1611 (Core)
harbor版本:harbor-offline-installer-v1.10.4.tgz
docker版本:Server Version: 19.03.13
docker-compose:1.27.3
[root@192 opt]# docker version
Client: Docker Engine - Community
Version: 19.03.13
API version: 1.40
Go version: go1.13.15
Git commit: 4484c46d9d
Built: Wed Sep 16 17:03:45 2020
OS/Arch: linux/amd64
python版本:
[root@192 opt]# python -V
Python 2.7.5
docker-compose版本及openssl版本:
[root@192 opt]# docker-compose version
docker-compose version 1.27.3, build 4092ae5d
docker-py version: 4.3.1
CPython version: 3.7.7
OpenSSL version: OpenSSL 1.1.0l 10 Sep 2019
安装过程参考
官网CA证书安装指导
https://goharbor.io/docs/2.0.0/install-config/configure-https/
Docker安装
1、删除原docker版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
yum install -y yum-utils
3、安装依赖软件包
yum install -y yum-utils
4、设置镜像仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
5、更新yum软件包索引
yum makecache fast
6、安装DOCKER CE
yum -y install docker-ce docker-ce-cli containerd.io
7、镜像加速设置
mkdir -p /etc/docker
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://t5er6tg0.mirror.aliyuncs.com"],
"insecure-registries":["http://192.168.124.65:5003","https://192.168.124.59:8004"]
}
此处因有私服和harbor,所以insecure-registries新增了两个私库地址
8、修改docker默认安装路径
```bash
vim /usr/lib/systemd/system/docker.service
注释掉
#ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
新增
ExecStart=/usr/bin/dockerd --graph /opt/docker
###其中/opt/docker代表docker需要存放的目录
wq保存配置文件
9、新建docker存放路径
#新建/opt/docker目录
mkdir -p /opt/docker
重新加载,重启docker服务
systemctl daemon-reload
systemctl restart docker
Docker-compose安装
Docker-compose安装:因1.27.4下载不下来,本次用的1.27.3版本
[root@localhost bin]#curl -L "https://github.com/docker/compose/releases/download/1.27.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
[root@localhost bin]# chmod +x docker-compose
Harbor安装
1、下载离线安装包harbor-offline-installer-v1.10.4.tgz
2、上传安装包到服务器指定目录
3、解压安装包
[root@localhost opt]# tar -zxvf harbor-offline-installer-v1.10.4.tgz
4、修改配置文件harbor.yml,(2.1后的版本解压后仅有harbor.yml.tmpl文件,需手动复制一个)
[root@localhost opt]#cd harbor
新建harbor数据存放目录
[root@192 harbor]# mkdir data
新建harbor日志存放目录
[root@192 harbor]# mkdir logs
按需修改配置文件,关键参数:
http端口:
https端口:
CA证书目录:
certificate: /opt/data/cert/ca.crt
private_key: /opt/data/cert/ca.key
harbor管理员密码:
harbor_admin_password:
相关harbor数据/日志存放目录
data_volume:
location:
CA证书可以用商用证书或自己生成免费CA证书
5、安装启动harbor
[root@localhost harbor]# ./prepare
[root@localhost harbor]# ./install.sh
harbor开启命令
[root@localhost harbor]# docker-compose up -d
harbor停止命令:
[root@localhost harbor]# docker-compose stop
官网提供一个停止命令:
[root@localhost harbor]# docker-compose down -v
CA证书设置
1、生成CA证书私钥 ca.key
openssl genrsa -out ca.key 4096
2、根据上面生成的CA证书私钥,再来生成CA证书 ca.crt
openssl req -x509 -new -nodes -sha512 -days 3650 \
-subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=192.168.124.59" \
-key ca.key \
-out ca.crt
3、生成私钥 yourdomain.com.key
openssl genrsa -out 192.168.124.59.key 4096
4、生成证书签名请求(CSR)yourdomain.com.csr
openssl req -sha512 -new \
-subj "/C=CN/ST=Shenzhen/L=Shenzhen/O=example/OU=Personal/CN=192.168.124.59" \
-key 192.168.124.59.key \
-out 192.168.124.59.csr
5、生成一个x509 v3扩展文件
cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = IP:192.168.124.59
EOF
6、使用该v3.ext文件为您的Harbor主机生成证书 yourdomain.com.crt
openssl x509 -req -sha512 -days 3650 \
-extfile v3.ext \
-CA ca.crt -CAkey ca.key -CAcreateserial \
-in 192.168.124.59.csr \
-out 192.168.124.59.crt
7、将服务器证书yourdomain.com.crt的编码格式转换为yourdomain.com.cert,提供Docker使用
openssl x509 -inform PEM -in 192.168.124.59.crt -out 192.168.124.59.cert
可以参考一个大佬的链接,相当专业
https://blog.csdn.net/u012887259/article/details/105653438
安装完成
访问Harbor仓库服务,打开google浏览器,输入http://IP:端口访问。
出现上图页面,即代表Harbor仓库可以正常访问。