harbor 2.x版本升级和回滚
将现有 Harbor 实例升级到较新版本时,可能需要迁移中的设置。由于迁移可能会更改的数据库架构和 设置,因此在进行任何迁移之前,应始终备份数据。``
重要升级说明,记得备份数据,记得备份数据,记得备份数据!
升级harbor和迁移数据
-
登录到 Harbor 主机,如果它仍在运行,请停止并删除现有的 Harbor 实例(假设您的harbor安装在/harbor目录下)。
cd /harbor docker-compose down -
备份Harbor的当前文件,以便您可以根据需要回滚到当前版本(附带说一下,回滚可以,降级不行哦)。
mv harbor /harbor2.3.4/harbor #这里最好注明原来得版本是哪个版本,如果非要降级就只能用回滚到之前版本了 -
备份数据库,缺省情况下,该数据库位于
/data/database目录cp -r /data/database /harbor2.3.4/database -
从 Releases · goharbor/harbor · GitHub 获取最新的 Harbor 版本包,建议使用脱机包,比较方便;本文写作时最新版本2.6.0,文件名harbor-offline-installer-v2.6.0-rc1.tgz,大小648M。
-
将harbor-offline-installer-v2.6.0-rc1.tgz解压缩到一个临时目录中。
mkdir /var/local/temp cd /var/local/temp tar xvf harbor-offline-installer-v2.6.0-rc1.tgz解包后会有个harbor目录。
-
装载脱机包。在以下命令中,将 [tag] 替换为新的 Harbor 版本,例如 v2.6.0:
cd harbor docker image load -i harbor.v2.6.0.tar.gz等待装载完成。
-
将
temp/harbor文件夹下得文件复制到harbor安装目录并升级它。假设在/harbor下,注意不要覆盖原来的harbor.yml文件,最后的文件路径根据你自己的实际情况修改。docker run -it --rm -v /:/hostfs goharbor/prepare:v2.6.0 migrate -i /harbor/harbor.yml注意:数据库的模式升级和数据迁移由核心在 Harbor 启动时执行。如果迁移失败,请检查核心日志以进行调试。
-
在
/harbor目录中,运行脚本以安装新的 Harbor 实例。./install.sh完成后,harbor将升级到2.6.0版本
-
如果
./install.sh安装过程中出现网卡错误,可以不予理会,但需要执行启动命令docker-compose up -d用浏览器访问,查看是否正确升级
从升级回滚
如果需要回滚到以前版本的 Harbor,前提条件时要有以前版本 Harbor的备份。
Harbor 2.2 由 Golang 1.15 编译,它弃用了没有 SAN 的自签名证书。如果是之前的版本,没试过,请自行尝试,2.2以后的版本升级回滚测试通过。
-
停止并删除当前 Harbor 服务(如果仍在运行)。
cd /harbor docker-compose down -
删除当前harbor实例。
rm -rf /harbor -
恢复旧版本的harbor。(注意安装目录)
mv /harbor2.3.2/harbor /harbor -
要还原数据库,请将数据文件从备份目录复制到数据卷,默认情况下为
/data/database -
使用以前的配置重新启动港湾服务。
如果以前版本的 Harbor 是由发行版安装的:
cd harbor ./install.sh
官方说明,虽然您可以将升级回滚到开始升级之前的状态,但 Harbor 不支持降级。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
