在生产环境上迁移GitLab的目录需要注意一下几点:
1、目录的权限必须为755或者775
2、目录的用户和用户组必须为git:git
3、如果在深一级的目录下,那么git用户必须添加到上一级目录的账户。
4、很多文章说修改/etc/gitlab/gitlab.rb这个文件里面的git_data_dirsb变量,其实没必要,只需要使用软链接改变原始目录/var/opt/gitlab/git-data更好一些。
5、注意:迁移前的版本和迁移后的版本必须保持一致,如果迁移后的版本是高版本,那么现在原版本做升级后再迁移。
迁移方法:
此方法适用于版本:11.4.5+
# 停止服务gitlab-ctl stop# 备份目录mv /var/opt/gitlab/git-data{,_bak}# 新建新目录mkdir -p /data/service/gitlab/git-data# 设置目录权限chown -R git:git /data/service/gitlabchmod -R 775 /data/service/gitlab# 同步文件,使用rsync保持权限不变rsync -av /var/opt/gitlab/git-data_bak/repositories /data/service/gitlab/git-data/# 创建软链接ln -s /data/service/gitlab/git-data /var/opt/gitlab/git-data# 更新权限gitlab-ctl upgrade# 重新配置gitlab-ctl reconfigure# 启动gitlab-ctl start
以上只是例子,在生产环境可以根据这些步骤随机应变。
参考: