Harbor镜像仓库安装部署指南

Lear 2025-03-17 10:00:00
Categories: Tags:

Harbor镜像仓库安装部署指南

在服务器上安装部署Harbor镜像仓库。让我先回忆一下之前学过的相关知识,或者查一下资料。首先,Harbor是一个企业级的Docker镜像仓库,提供了权限管理、镜像同步、漏洞扫描等功能。安装的话,可能需要先满足一些前提条件,比如Docker和Docker Compose的环境。

我记得Harbor的安装步骤大致是这样的:首先安装Docker和Docker Compose,然后下载Harbor的安装包,解压之后修改配置文件,最后运行安装脚本。不过具体细节可能需要注意版本兼容性,还有配置参数是否正确。

首先,我得确认服务器的操作系统。假设是Ubuntu 20.04 LTS,这个比较常见。然后安装Docker。Docker的安装可以通过官方脚本安装,或者使用apt仓库。可能还需要安装Docker Compose,不过现在Docker Compose V2可能已经集成到Docker CLI中,或者需要单独安装?

接下来,Harbor的版本需要选择,比如2.5.0或者更新的版本。需要去GitHub的Harbor releases页面下载对应的离线安装包,比如harbor-offline-installer-v2.5.0.tgz。解压后进入目录,里面应该有一个harbor.yml.tmpl配置文件,需要复制为harbor.yml并进行编辑。

配置文件中需要设置hostname,可以是IP地址或者域名,比如192.168.1.100,或者harbor.example.com。然后配置HTTP或者HTTPS,如果是测试环境可能用HTTP,但生产环境需要HTTPS,配置证书。另外,数据存储路径可能需要调整,默认是在/data目录下,但可能需要挂载到更大的磁盘分区。

然后还有管理员密码,默认是Harbor12345,但肯定需要修改。可能还需要配置数据库,不过Harbor默认使用内部的PostgreSQL和Redis,可能不需要额外配置,除非要使用外部数据库。

然后运行安装脚本,比如sudo ./install.sh,这个脚本会启动Docker Compose服务。安装完成后,访问配置的hostname,使用管理员账号登录。可能还需要在Docker客户端配置信任该仓库,尤其是如果使用HTTP的话,需要修改daemon.json文件,添加insecure-registries配置,然后重启Docker服务。

另外,可能遇到的问题包括端口冲突,比如80或443端口被占用,这时候需要修改harbor.yml中的端口设置。或者安装过程中Docker Compose版本不兼容,需要确认Docker Compose的版本是否符合要求。Harbor的文档应该会有详细的要求,比如Docker版本需要17.06.0+,Docker Compose需要1.18.0+。

还有,安装后的管理,比如如何停止和启动Harbor,可以使用docker-compose命令,在Harbor的安装目录下,执行docker-compose down/up -d。升级的话可能需要下载新版本的安装包,执行迁移脚本等。

可能还需要考虑持久化数据,确保/data目录下的数据备份,或者配置外部存储,比如S3或者NFS。

总结一下,步骤大概是:

1. 安装Docker和Docker Compose。

2. 下载Harbor离线包并解压。

3. 配置harbor.yml文件。

4. 运行安装脚本。

5. 配置Docker客户端信任仓库。

6. 访问Web界面,创建项目和用户。

现在,可能需要注意的一些细节:比如,如果服务器防火墙开放端口,比如80、443、4443等;SELinux或者AppArmor是否需要关闭或者配置策略;还有,是否启用Clair进行漏洞扫描,或者Notary进行镜像签名,这些可能在安装时通过参数启用。

哦,对了,Harbor支持两种安装方式:在线和离线。离线安装包包含了所需的镜像,所以不需要在安装时下载,比较方便。在线安装包可能更小,但安装时需要从网络拉取镜像,可能会有网络问题。

安装过程中可能会遇到的问题:比如权限问题,比如解压后的目录是否有足够权限;或者Docker服务没有启动;或者配置文件中的缩进错误,因为YAML对缩进敏感。

还有,安装完成后,如何验证是否成功:访问Web界面,使用docker login命令测试登录,推送和拉取镜像测试。

可能还需要考虑后续的维护,比如日志查看、备份恢复、升级步骤等。不过初次安装的话,先确保基本功能正常。

以下是Harbor镜像仓库的详细安装部署步骤:

1. 环境准备

2. 安装Docker和Docker Compose

bash

# Ubuntu示例

sudo apt update

sudo apt install -y apt-transport-https ca-certificates curl software-properties-common

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo “deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable” | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update

sudo apt install -y docker-ce docker-ce-cli containerd.io

# 安装Docker Compose V2

sudo curl -L “https://github.com/docker/compose/releases/download/v2.20.0/docker-compose-\$(uname -s)-$(uname -m)” -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

# 验证安装

docker –version

docker-compose –version

3. 下载Harbor离线安装包

bash

# 访问GitHub Releases页面选择版本:https://github.com/goharbor/harbor/releases

wget https://github.com/goharbor/harbor/releases/download/v2.8.2/harbor-offline-installer-v2.8.2.tgz

tar xzvf harbor-offline-installer-*.tgz

cd harbor

4. 配置Harbor

bash

# 复制模板文件并编辑

cp harbor.yml.tmpl harbor.yml

vim harbor.yml

关键配置项:

yaml

# 主机名(IP或域名)

hostname: 192.168.1.100 # 或 harbor.yourdomain.com

# 协议设置(HTTP/HTTPS)

http:

port: 80

https: # 如需HTTPS,取消注释并配置证书

port: 443

certificate: /your/certificate/path

private_key: /your/private/key/path

# 管理员密码(默认Harbor12345)

harbor_admin_password: YourStrongPassword

# 数据存储路径

data_volume: /data/harbor

# 可选功能(按需启用)

clair:

updaters_interval: 12 # 漏洞扫描间隔

trivy:

ignore_unfixed: false # Trivy扫描器配置

notary: # 镜像签名

enabled: true

5. 安装Harbor

bash

# 执行安装脚本(自动启动服务)

sudo ./install.sh

# 安装成功后输出:

# ✔ —-Harbor has been installed and started successfully.—-

6. 访问Harbor Web界面

7. Docker客户端配置

信任私有仓库(HTTP模式)

bash

# 修改Docker配置

sudo vim /etc/docker/daemon.json

# 添加:

{

“insecure-registries”: [“192.168.1.100”]

}

sudo systemctl restart docker

# 登录Harbor

docker login 192.168.1.100 -u admin -p YourStrongPassword

8. 常用管理命令

bash

# 停止Harbor

cd /path/to/harbor

docker-compose down

# 启动Harbor

docker-compose up -d

# 查看日志

tail -f /var/log/harbor/*.log

# 备份数据

cp -r /data/harbor /backup/harbor-data-backup

9. 故障排查

10. 扩展功能

完成以上步骤后,即可通过Harbor管理私有镜像,支持推送、拉取、权限控制等企业级功能。