Gitlab离线迁移


前言

当前服务器运行内存不足,迁移至新服务器,gitlab版本:15.7.0


一、迁移过程

1.1 数据备份

# gitlab-rake gitlab:backup:create  #默认在/var/opt/gitlab/backups目录下生成备份文件-tar包
# /etc/gitlab/gitlab.rb  gitlab-secrets.json     #手动备份两个文件

1.2 还原

提示:新服务器gitlab版本必须与原服务器版本一致

# 停止与数据库相关进程
# gitlab-ctl stop unicorn
# gitlab-ctl stop sidekiq
# gitlab-ctl stop puma
# gitlab-rake gitlab:backup:restore BACKUP=1675732601_2023_02_07_15.7.0  # 还原,使用备份tar包时间戳
# gitlab-ctl restart # 重启服务
# gitlab-ctl start unicorn 

二、问题记录

2.1 还原报错 “must be owner of extension btree_gist”

Restoring PostgreSQL database gitlabhq_production … ERROR: must be
owner of extension pg_trgm ERROR: must be owner of extension
btree_gist ERROR: must be owner of extension btree_gist ERROR: must
be owner of extension pg_trgm

# 修改postgresql配置
# vim /var/opt/gitlab/postgresql/data/postgresql.conf
listen_addresses = '*'  #修改为 *
# vim /var/opt/gitlab/postgresql/data/pg_hba.conf     # 最下面新增两行
local   all         all                               trust  # 原local配置可注释
host    all         all                               127.0.0.1/32 trust
# gitlab-ctl restart  # 重启服务
# su - gitlab-psql    # 修改gitlab账号为超级用户
/opt/gitlab/embedded/bin/psql -h 127.0.0.1 gitlabhq_production
psql (13.8)
Type "help" for help.
 
gitlabhq_production=# ALTER USER gitlab WITH SUPERUSER;
ALTER ROLE
gitlabhq_production=# \q
# gitlab-rake gitlab:backup:restore BACKUP=**   # 重新执行还原命令 

2.2 还原报错 “ Error No space left on device

  • 修改gitlab默认备份路径,存储路径
# gitlab-ctl stop 
# mkdir -p /data/gitlab/backups  #创建新的备份路径
# mkdir -p /data/gitlab/gitlab-data   #创建新的存储路径
# vi /etc/gitlab/gitlab.rb
# 修改配置:
 git_data_dirs({default=> {
“path” =>/data/gitlab/gitlab-data”    # 存储路径
}
})

gitlab_rails['backup_path'] = "/data/gitlab/backups"  # 备份路径
# gitlab-ctl reconfigure   # 重新加载配置
# gitlab-ctl restart
# 关闭数据库相关进程
# gitlab-rake gitlab:backup:restore BACKUP=**   # 重新执行还原命令 

三、gitlab后台设置管理员账户

# gitlab-rails console -e production
--------------------------------------------------------------------------------
 GitLab:       12.8.7 (b679f55a199) FOSS
 GitLab Shell: 11.0.0
 PostgreSQL:   10.12
--------------------------------------------------------------------------------
Loading production environment (Rails 6.0.2)
irb(main)
> user = User.where(id: 1).first # 此 user 则表示 root 用户
> user.password = 'pwd' # 修改密码
> user.password_confirmation = 'pwd' # 确认密码
> user.save # 保存
> exit # 退出
# 前端登录后 settions -> preferences -> localization 设置中文  

四、gitlab端口修改

# vi /var/opt/gitlab/nginx/conf/gitlab-http.conf
server { ## HTTPS server
	listen *:8081    # 修改端口
# vi /etc/gitlab/gitlab.rb  
# nginx['listen_port'] = 8081  # 修改端口
# gitlab-ctl reconfigure
# gitlab-ctl restart

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

twenty-six

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值