发布网友 发布时间:2024-09-30 18:11
共1个回答
热心网友 时间:2024-10-12 14:11
阿里云服务器到期后,为了不浪费资源,决定将 GitLab 从阿里云迁移至腾讯云服务器。迁移前需确认两个 GitLab 服务版本相同,这里指的是版本号和版本类型(企业版 ee 还是社区版 ce)。在迁移过程中,先检查当前 GitLab 服务的版本,通常通过在服务域名后加上 "/help" 访问帮助页面获取。比如 http://git.xxxxxx.com/help。
查阅 GitLab 官方网站查找对应的版本信息。我的 GitLab 为社区版,版本号为 11.10.2,选择社区版。通过搜索功能快速定位到版本号为 11.10.2 的安装指南。安装指南包括两个步骤:在系统中添加 GitLab CE 源,然后安装当前版本的 GitLab。按照步骤执行,完成安装。
在新 GitLab 服务安装完成后,需要从旧服务中备份数据。可通过文档中提供的方法进行备份,包括源码安装备份、Docker 安装备份和安装包安装备份。我使用的是安装包安装,所以备份采用安装包方法。备份文件以 tar 格式存储在 /var/opt/gitlab/backup 目录下,文件名由当前日期拼接而成,方便查找。备份路径和文件名可自定义,文档中提供了详细说明。
遇到服务器硬盘空间不足导致备份失败的问题,因为备份文件过大。解决方法是放弃备份一些非必要数据,如 builds、uploads、artifacts、lfs、registry、pages 等。通过选择性备份,将备份文件大小压缩至 2.1GB。
备份文件上传至腾讯云服务器。起初使用 scp 命令进行文件复制,但由于服务器带宽*导致速度慢。考虑到备份文件来源于阿里云服务器,选择将备份上传至阿里云的 OSS(对象存储服务)进行高速传输。上传至 OSS 的速度较快,且下载速度也不会受限。上传 OSS 的费用相对较低,大约为几毛钱。最后,将备份从 OSS 下载至本地,再复制到腾讯云服务器中进行恢复。
恢复备份时,先停止相关服务,断开某些连接,然后使用指定命令进行恢复操作。恢复完成后,修改域名指向服务器。将文件中的 external_url 更改为 GitLab 的 URL,重启 GitLab 服务。最后确保将域名正确指向服务器地址。
在迁移过程中,忽视了 CI/CD 配置页面出现 500 错误。查阅官方文档,发现还需要迁移两个文件。根据博客指导,将文件复制到新服务对应位置,重新配置并重启 GitLab 服务。别忘了更新地址设置。迁移 GitLab 成功后,确保所有配置和连接都能正常运行。