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. 环境准备
- 操作系统:Ubuntu 20.04 LTS / CentOS 7+(推荐)
- 依赖工具:
- 硬件要求:
- 最小配置:2 CPU / 4GB RAM / 40GB 磁盘空间
- 生产建议:4 CPU / 8GB RAM / 500GB+ 磁盘(根据镜像量调整)
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界面
- 浏览器访问:http://<hostname> 或 https://<hostname>
- 使用账号:admin 和配置的密码登录。
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. 故障排查
- 端口冲突:修改harbor.yml中的端口号,如http.port: 8080。
- 磁盘不足:确保data_volume路径有足够空间。
- Docker版本不兼容:升级到最新稳定版。
10. 扩展功能
- LDAP/AD集成:在Web界面配置认证模式。
- 镜像同步:使用“复制管理”实现多仓库同步。
- 漏洞扫描:启用Clair或Trivy组件。
完成以上步骤后,即可通过Harbor管理私有镜像,支持推送、拉取、权限控制等企业级功能。