harbor安装
# harbor安装
# harbor安装
# 前置工作
docker离线安装+升级 (opens new window)
docker-compose离线安装+升级 (opens new window)
# 离线安装
# 1. 下载安装包
#后台下载
nohup wget https://github.com/goharbor/harbor/releases/download/v2.4.3/harbor-offline-installer-v2.4.3.tgz &
或者
wget https://github.com/goharbor/harbor/releases/download/v2.4.3/harbor-offline-installer-v2.4.3.tgz
1
2
3
4
2
3
4
# 2. 解压
tar -zxvf harbor-offline-installer-v2.4.3.tgz -C /opt
1
# 3. 调整配置
从 harbor.yml.tmpl
复制一个 harbor.yml
,然后修改前面几行,自定义 hostname
, port
禁用 https
,设置管理员密码,
注:数据存储路径放在 /opt/harbor/data
下。映射到docker容器里面的/storage目录下。
cd /opt/harbor
cp harbor.yml.tmpl harbor.yml
1
2
2
hostname: 192.168.7.4
http:
port: 10000
#https:
# port: 443
# certificate: /your/certificate/path
# private_key: /your/private/key/path
harbor_admin_password: Harbor12345
data_volume: /opt/harbor/data
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# 4. 安装并启动
./install.sh
1
# 5. 登陆
http://192.168.7.4:10000/harbor/
admin/Harbor12345
1
2
2
# 设置开机自启动
参考博主:CSDN 摸鱼鱼 (opens new window)
重启harbor服务器发现主机重启之后harbor不能自己起来,docker-compose restart
容器也会报错,查找资料发现问题在于容器只有在 docker-compose up
时,才会按照 depends_on
定义的顺序启动。
docker 本身并不记录容器之间的依赖顺序,容器们的重启是相互独立的,各自独立的重启导致服务器重启后,harbor 无法正常启动。
查看 harbor 目录下的 docker-compose.yml
会发现,所有的 containers 都配置了 restart:always:
这表示所有的容器在意外关闭后都会自动重启,比如 docker 重启或服务器重启。(手动 stop 不会自动重启)
但是我在手动运行 docker-compose restart
,发现有几个 container 并没有自动重启:
尝试将 harbor 配成 systemd 的 service,添加配置文件:
cat >>/usr/lib/systemd/system/harbor.service<<EOF
[Unit]
Description=Harbor
After=docker.service systemd-networkd.service systemd-resolved.service
Requires=docker.service
Documentation=https://github.com/goharbor/harbor
[Service]
Type=simple
Restart=on-failure
RestartSec=5
##########docker-compose和harbor的安装位置
ExecStart=/usr/local/bin/docker-compose -f /opt/harbor/docker-compose.yml up
ExecStop=/usr/local/bin/docker-compose -f /opt/harbor/docker-compose.yml down
[Install]
WantedBy=multi-user.target
EOF
# 设置开机启动
systemctl enable harbor
systemctl start harbor
docker ps -a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
重启之后,harbor也能自动重启了。
# harbor磁盘清理
按下面步骤执行成功
1.停止docker harbor
cd /export/harbor/harbor/
/usr/local/bin/docker-compose stop
2.预览运行效果
docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.2-photon garbage-collect --dry-run /etc/registry/config.yml
3.执行删除
docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.2-photon garbage-collect /etc/registry/config.yml
4.重启harbor
/usr/local/bin/docker-compose start
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# 配置镜像代理
上次更新: 2024/05/11, 03:55:33