Harbor镜像仓库的安装与配置

本文详细介绍Harbor镜像仓库的安装与配置过程,包括环境准备、下载与解压安装包、配置harbor.yml文件、运行prepare及install.sh脚本。同时,针对HTTPS访问配置,涵盖CA证书与服务器证书生成、x509v3扩展文件制作、向Harbor与Docker提供证书等步骤。最后,通过浏览器与Docker验证配置正确性,并指导如何推送与拉取镜像。

Harbor镜像仓库的安装与配置

一、安装Harbor

1.环境准备:

​ 1.一台Centos7服务器(docker已安装, ip : 192.168.1.105),此服务器准备安装镜像仓库;

​ 2.一台Centos7服务器(docker已安装, ip : 192.168.1.106),此服务器测试从Harbor镜像仓库push和pull镜像用。

2.下载Harbor安装

下载安装包:https://github.com/goharbor/harbor/releases

1.解压压缩包
 tar zxvf harbor-online-installer-v1.8.1.tgz
2.配置harbor.yml文件
hostname: 192.168.1.105

http:
port will redirect to https port
  port: 80

https:
  port: 443
  certificate: /data/cert/192.168.1.105.crt
  private_key: /data/cert/192.168.1.105.key

harbor_admin_password: Harbor12345

database:
  password: root123
  
data_volume: /data
3.运行prepare文件
./prepare
4.安装

​ 服务器必须先安装Docker Compose

./install.sh

安装完成,可以在浏览器中登录;但是使用另一台主机从镜像仓库中拉取镜像时将报错:

http: server gave HTTP response to HTTPS client

原因是docker作为客户端,发送的是https请求,仓库未配置https.

二、配置Harbor的HTTPS访问

可参考: https://goharbor.io/docs/2.0.0/install-config/configure-https/

以下ip修改为Harbor服务器的ip

1.创建CA证书

​ 生成CA证书私钥

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=192.168.1.105"\
 -key ca.key \
 -out ca.crt

2.生成服务器证书

​ 生成服务器证书私钥

openssl genrsa -out 192.168.1.105.key 4096

​ 生成服务器证书

openssl req -sha512 -new \
    -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=192.168.1.105" \
    -key 92.168.1.105.key \
    -out 92.168.1.105.csr

3.生成 x509 v3扩展文件

这里不能按照官网的安装,官网使用的是域名.

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

4.向Harbor和Docker提供证书

1.向Harbor提供证书

harbor.yml配置文件中,certificate和private_key文件路径在/data/cert/下,所以要把生成的服务器证书放在这个目录下

mkdir /data/cert/
cp 192.168.1.105.crt /data/cert/
cp 192.168.1.105.key /data/cert/

2.向docker提供证书

将.crt文件转换为.cert文件,供docker使用

openssl x509 -inform PEM -in yourdomain.com.crt -out yourdomain.com.cert
mkdir -p /etc/docker/certs.d/192.168.1.105/
cp 192.168.1.105.cert /etc/docker/certs.d/192.168.1.105/
cp 192.168.1.105.key /etc/docker/certs.d/192.168.1.105/
cp ca.crt /etc/docker/certs.d/192.168.1.105/

3.重启docker

systemctl restart docker

三、验证,测试

1.浏览器使用https登录

将192.168.1.105.crt拷贝至本机安装,浏览器就能用https正常访问.

2.测试docker能否正常登录

1.使用192.168.1.106服务器登录Harbor
docker login 192.168.1.105

将报错:

Error response from daemon: Get https://192.168.1.105/v2/: x509: certificate signed by unknown authority
2.制作的ca证书添加到信任(因为是自签名证书):

将ca.crt拷贝至192.168.1.106主机

mkdir –p /etc/docker/certs.d/192.168.1.105
cp ca.crt /etc/docker/certs.d/192.168.1.105/ca.crt
systemctl restart docker

出现:Login Succeeded,表示登录成功

四、推送和拉取镜像

1.标记镜像

docker tag SOURCE_IMAGE[:TAG] 192.168.1.105/项目名/IMAGE[:TAG]

2.推送镜像到Harbor

docker push 10.82.13.105/项目名/IMAGE[:TAG]
3.从Harbor中拉取镜像
docker pull 10.82.13.105/项目名/IMAGE[:TAG]
Harbor 是一个企业级的 Docker 镜像仓库,提供了管理和控制 Docker 镜像的安全、认证和访问控制等功能。在安装配置 Harbor 镜像仓库之前,需要进行登录验证的操作。 1. 安装 DockerDocker Compose 首先,需要在安装 Harbor 之前安装 DockerDocker Compose。可以参考 Docker 的官方文档进行安装。 2. 下载并解压 Harbor 安装包 从 Harbor 的官方网站下载最新版本的安装包,解压到指定的目录中。 3. 创建 Harbor配置文件 在解压后的 Harbor 目录中,将 harbor.cfg.tmpl 文件复制一份,并将其重命名为 harbor.cfg。该文件是 Harbor 的主要配置文件,需要根据实际情况进行修改。其中,需要注意的是,在配置文件中需要设置 admin_initial_password,它是 Harbor 的管理员密码。 4. 启动 HarborHarbor 目录中,执行以下命令启动 Harbor: ``` docker-compose up -d ``` 该命令会启动 Harbor 的各个服务,并将其作为 Docker 容器运行。在启动过程中,可以通过 docker logs 命令查看 Harbor 的启动日志。 5. 登录验证 启动 Harbor 之后,可以通过浏览器访问 Harbor 的 Web 界面,进行登录验证。在浏览器中输入 http://<Harbor_IP>/,其中,<Harbor_IP> 是 Harbor 所在的主机的 IP 地址。如果成功进入 Harbor 的 Web 界面,则说明登录验证成功。 以上就是 Harbor 镜像仓库安装配置过程中的登录验证操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值