下载harbor离线包
地址 https://github.com/goharbor/harbor/releases,这里选择 harbor-offline-installer-v2.2.2.tgz 。
mkdir -p /opt/harbor
cd /opt/harbor
wget https://github.com/goharbor/harbor/releases/download/v2.2.2/harbor-offline-installer-v2.2.2.tgz
安装
解压
tar -xzf harbor-offline-installer-v2.2.2.tgz
修改配置文件
cd harbor
cp harbor.yml.tmpl harbor.yml
vim harbor.yml
修改下面的配置:
(1)hostname 修改为 ip。
(2)这里使用http访问,注释掉https的相关配置。
如下图:
执行 prepare
这一步会生成配置文件等。
./prepare
执行安装
这一步会导入镜像,启动容器等。
./install.sh
验证
配置 docker 访问 harbor
vim /etc/docker/daemon.json
加入仓库地址:
"insecure-registries" : ["192.168.56.104"],
如下图:
可复制:
{
"registry-mirrors": ["https://registry.docker-cn.com"],
"insecure-registries" : ["192.168.56.104"],
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
重启 docker
systemctl restart docker
登录 harbor 仓库
docker login 192.168.56.104
输入用户 admin 和 密码 Harbor12345。
推送镜像到仓库
docker tag hi:v1.0 192.168.56.104/library/hi:v1.0
docker push 192.168.56.104/library/hi:v1.0
登录管理界面
http://192.168.56.104/
用户名:admin
密码:Harbor12345
密码可以在 harbor.yml 中修改,此处未修改,使用了默认的密码。
查看“项目” -> libary,可以看到刚才推送的镜像。
附
windows server 2019 docker 配置文件
notepad.exe C:\ProgramData\Docker\config\daemon.json
{
"hosts": ["npipe://", "tcp://0.0.0.0:2375"],
"registry-mirrors": ["https://registry.docker-cn.com"],
"insecure-registries" : ["192.168.3.150:8098"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"data-root": "D:\\docker-root"
}
错误解决
如果修改了 ip 地址,通过浏览器界面,可以照常登录,但 docker login 会出现 Client.Timeout。
执行 ./prepare,再重新启动 harbor 即可。
附2
重启
重启电脑后,harbor可能没有成功重启,需要用脚本重启
#!/bin/bash
sleep 50s
serviceNum=$(docker ps | grep -E "goharbor.*healthy" | wc -l)
if [ $serviceNum -lt 9 ]; then
echo "harbor started "$serviceNum" service, it is incomplete, restart automatically"
cd /opt/harbor/harbor/
docker-compose stop
docker-compose up -d
else
echo 'harbor alreadry started successfully'
fi