GitLab目录迁移方法
在生产环境上迁移GitLab的目录需要注意一下几点:
-
目录的权限必须为755或者775
-
目录的用户和用户组必须为git:git
-
如果在深一级的目录下,那么git用户必须添加到上一级目录的账户。
-
很多文章说修改/etc/gitlab/gitlab.rb这个文件里面的
git_data_dirsb
变量,其实没必要,只需要使用软链接改变原始目录/var/opt/gitlab/git-data更好一些. -
注意:迁移前的版本和迁移后的版本必须保持一致, 如果迁移后的版本是高版本, 那么现在原版本做升级后再迁移.
迁移方法:
# 停止服务
gitlab-ctl stop
# 备份目录
mv /var/opt/gitlab/git-data{,_bak}
# 新建新目录
mkdir -p /data/service/gitlab/git-data
# 设置目录权限
chown -R git:git /data/service/gitlab
chmod -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服务
gitlab-ctl start