目录
- 备份项目
- 备份gitlab配置
- 阿里云磁盘格式化
- 准备
最近服务器中了挖矿病毒,清理几次,都没有搞定,只能重新安装gitlab
备份项目
先把项目备份到本地
git pull
git remote prune origin
- 确保本地代码是最新的并且拥有所有的分支
git remote remove origin
- 删除本地代码分支与旧Gitlab分支的关联关系
效果如下图
- 但是,一定得提前沟通好,迁移过程中,不要提交代码,记得拉取最新的代码
- 这是保险方案,后面进行恢复过程中,发现项目没有丢失,所以这个可以作为保险方案来处理
主要是我看备份的大家文件才11MB,我以为不会包含项目,原来是我想多了
备份gitlab配置
gitlab-rake gitlab:backup:create
- 备份的文件会在/var/opt/gitlab/backups下
记得备份一下gitlab的配置
阿里云磁盘格式化
- 先停止阿里云实例,再初始化磁盘
- 注意: 记得换一个ip,不然,很容易就容易被再次攻击,同时增加远程访问ip限制,不清楚换ip,可以咨询一下阿里云的技术人员
准备
下载gitlab离线包
离线包
- 注意迁移的时候,版本一定要一直,不然,会有问题
###解压gitlab
rpm -ivh gitlab-ce-15.10.0-ce.0.el7.x86_64.rpm --nodeps --force
- 安装成功后,/etc/gitlab下面会多一个文件, 替换成之前备份的
- 记得修改一下配置中的ip为当前服务器的地址
- **
**
- 覆盖一下配置文件
初始化
gitlab-ctl reconfigure
- 执行该命令后,/var/opt/gitlab目录才会生成,再把下面的配置移动到git备份目录下
### 还原备份 1711435255_2024_03_26_15.10.0为目录名称,注意,去掉gitlab_backup.tar后缀,要求如此
gitlab-rake gitlab:backup:restore BACKUP=1711435255_2024_03_26_15.10.0
#还原完成后重新配置gitlab并重启gitlab
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
##防火墙
###开放某些端口
firewall-cmd --list-ports
###开放端口生效
firewall-cmd --reload
###开放tcp 8888端口
firewall-cmd --zone=public --add-port=8888/tcp --permanent
- 注意,使用云服务器,还需要到阿里云上进行安全组设置,开放8888端口
通过网站访问,项目都在,说明迁移成功
本博客迁移过程中,如有疑问,欢迎留言,不排除有遗漏步骤