如何搭建Harbor镜像仓库并开启HTTPS
相关环境
centos7.7.1908
安装相关插件
# 前置安装完docker
# 安装epel源
yum install -y epel-release
# 安装docker-compose
yum install docker-compose -y
下载harbor安装包
# 下载harbor安装包(https://github.com/goharbor/harbor/releases/)
wget https://github.com/goharbor/harbor/releases/download/v2.3.1/harbor-offline-installer-v2.3.1.tgz
解压安装包
修改harbor配置文件
# 修改harbor/harbor.yml
# 当前服务器ip,安装完成后就可以用这个地址访问web管理页面
hostname: 192.168.1.xx
# 将https的所有项注释掉,不开启https访问
#https:
# https port for harbor, default is 443
#port: 443
# The path of cert and key files for nginx
#certificate: /your/certificate/path
#private_key: /your/private/key/path
# harbor ui后台管理员密码
harbor_admin_password: xxxxx
#必须设置,否则安装后重装时不能修改,除非删除数据库后重新安装
password: xxxx
# harbor日志存放路径
location: /data/logs/harbor
#持久化数据目录
data_volume: /opt/application/harbor
安装harbor
# 运行脚本安装
./install
# Harbord是基于docker-compose服务编排的,可以使用docker-compose命令重启Harbor
docker-compose start | stop | restart
配置开机启动
# 设置开机自启
# 添加配置文件
vi /usr/lib/systemd/system/harbor.service
[Unit]
Description=Harbor
After=docker.service systemd-networkd.service systemd-resolved.service
Requires=docker.service
Documentation=http://github.com/vmware/harbor
[Service]
Type=simple
Restart=on-failure
RestartSec=5
ExecStart=/usr/bin/docker-compose -f {{ harbor_install_path }}/harbor/docker-compose.yml up
ExecStop=/usr/bin/docker-compose -f {{ harbor_install_path }}/harbor/docker-compose.yml down
[Install]
WantedBy=multi-user.target
# 其中 {{ harbor_install_path }} 换成自己的 harbor 安装路径。
# 还有 docker-compose 的绝对路径,请通过 which docker-compose 查看
sudo systemctl enable harbor
sudo systemctl start harbor
# 修改后需要关闭harbor后重新执行./install.sh
上传镜像到harbor
# 修改docker的配置
vi /etc/docker/daemon.json
# 加入私有仓库地址,标识信任此仓库
{"insecure-registries":["192.168.xx.xx"]}
# 重启docker
sudo systemctl restart docker
# 打包镜像
docker tag <ID> 192.168.1.93/<仓库名>/<镜像名>
# 上传镜像
docker push 192.168.1.93/test/<镜像名>[:TAG]
# 如若上传需要输入账号密码
docker login 192.168.1.93
这样harbor就安装完啦