Harbor-容器镜像仓库

Harbor是一个开源的容器镜像仓库,可以用于私有部署容器的镜像仓库。

安装

本笔记记录时,Harbor最新版本为2.5.0。以下笔记如果没有做特别的版本说明,则是基于该版本或更高版本。


硬件要求

资源
最小值
推荐

CPU

2 CPU

4 CPU

Memory

4 GB

8 GB

Disk

40 GB

160 GB


软件要求

软件名
版本
描述

Docker engine

Version 17.06.0-ce+ 或更高版本

Docker基本服务

Docker Compose

Version 1.18.0 或更高版本

运行Harbor服务

Openssl

首选最新版本

用于为Harbor生成证书和密钥


网络端口

端口
协议
描述

443

HTTPS

Harbor网站和核心API使用HTTPS请求时的端口,可以在配置文件中修改该端口号

4443

HTTPS

与Harbor的Docker内容任务服务连接,只启用公证时才需要,同样可以在配置文件中修改

80

HTTP

同443端口,只是协议为HTTP


下载安装包

可以去Harbor的[[GitHub]]仓库下载最新的安装包。如果安装服务器的网络不稳定或没有外网,推荐下载带Offline的离线安装包。下载的压缩包中会包含服务需要所有镜像


基础配置及安装

基本配置

tar -zxf harbor-offline-installer-v2.5.0.tgz
cd harbor
cp harbor.yml.tmpl harbor.yml

主要调整harbor.yml中的hostname配置,如果要使用[[HTTPS]],则注意https配置部分的certificateprivate_key要修改为实际的服务证书和私钥路径。如果没有可信机构颁发的SSL证书,可以选择自建CA证书生成SSL证书

安装

sudo cd harbor
sudo ./install.sh

待脚本运行完成之后在浏览器访问在harbor.yml中配置的hostnameURL,默认用户名admin,密码为harbor.yml中配置的harbor_admin_password字段,进行WEB管理。


部分错误处理记录

Linux导入自建证书

因为是自己生成的CA证书,操作系统判断为未知CA证书。[docker](Docker/Docker.md)在登录、拉取、推送时会提示类似如下错误

Error response from daemon: Get https://registry.domain.com/v2/: x509: certificate signed by unknown authority

Ubuntu系统(20.04)

需要将上面生成的CA证书文件cacert.pem导入系统的信任区域,Ubuntu需要将证书修改为.crt后缀的文件放入/usr/local/share/ca-certificates/目录,并执行如下命令更新证书信息:

sudo update-ca-certificates

Updating certificates in /etc/ssl/certs...
1 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.

然后重启docker服务即可

CentOS 7

将生成的CA证书文件cacert.pem导入系统的信任区域/etc/pki/ca-trust/source/anchors/证书修改为.crt,执行如下命令更新证书信息:

update-ca-trust

然后重启docker服务即可

最后更新于