harbor升级

Travis 于 2020-04-21 发布

目录

目录结构

程序路径:/home/docker/gitlab

环境路径:/home/docker/pyenv

开始升级

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# 使用虚拟环境  
source /home/docker/pyenv/docker_py27/bin/activate  
  
cd /home/docker/gitlab/harbor  
  
# 停掉在用版本  
docker-compose down -v  
  
# 备份  
mv /home/docker/gitlab/harbor /home/docker/gitlab/bak/harbor_bak_v1.8.0  
cp -r /data/harbor/database /data/backup/database_bak_v1.8.0  
  
# 下载需要安装的 harbor  
wget https://github.com/goharbor/harbor/releases/download/v1.10.2/harbor-offline-installer-v1.10.2.tgz  
tar xzvf harbor-offline-installer-v1.10.2.tgz  
cd harbor/  
docker image load -i harbor/harbor.v1.10.2.tar.gz  
  
# 下载迁移工具(版本和要安装的 harbor 版本一致)  
docker pull goharbor/harbor-migrator:v1.10.2  
docker run -it --rm \  
  -v /home/docker/gitlab/bak/harbor_bak_v1.8.0/harbor.yml:/harbor-migration/harbor-cfg/harbor.yml \  
  -v /home/docker/gitlab/harbor/harbor.yml:/harbor-migration/harbor-cfg-out/harbor.yml \  
  goharbor/harbor-migrator:v1.10.2 --cfg up  
  
# 迁移配置完成后,查看 harbor.yml 无误后,执行安装程序  
./install.sh --with-notary --with-clair --with-chartmuseum  

修改配置

如果启动 docker-compose 后,发现需要修改配置的话。

操作如下:

1
2
3
4
5
6
7
8
9
10
11
source /home/docker/pyenv/docker_py27/bin/activate  
  
cd /home/docker/gitlab/harbor  
  
docker-compose down -v  
  
vim harbor.yml  
  
./prepare --with-notary --with-clair --with-chartmuseum  
  
deactivate  

升级 docker-compose

升级高版本的 harbor 时,在执行 install.sh 时,有可能会提示 docker-compose 版本过低。

操作如下:

1
2
3
# 升级虚拟环境下的 docker-compose 执行文件  
wget https://github.com/docker/compose/releases/download/1.25.5/docker-compose-Linux-x86_64  
mv docker-compose-Linux-x86_64 /home/docker/pyenv/docker_py27/bin/docker-compose  

重置 harbor admin 密码

升级后的 harbor 可能有登录不上的问题,重置 admin 的密码可以解决。

默认 admin 密码为:Harbor12345

操作如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 登陆 harbor-db  
docker exec -it harbor-db /bin/bash  
  
# 连接 postgresql  
psql -U postgres -d postgres -h 127.0.0.1 -p 5432  
  
# 切换到 harbor 所在的数据库  
\l # 查看所有库  
\c registry  
  
# 查看 harbor_user 表  
\d # 查看所有表  
Select * from harbor_user;  
  
# 修改 admin 密码(密码为 Harbor12345)  
update harbor_user set password='a71a7d0df981a61cbb53a97ed8d78f3e', salt='ah3fdh5b7yxepalg9z45bu8zb36sszmr' where username='admin';  
  
# 退出  
\q  
exit