将 Gitlab 迁移到新服务器

今天把一台服务器上的 Gitlab 换了个地儿, 记录一下遇到的大大小小的各种坑们:

  • 原服务器系统是 Ubuntu, 而新的是 Debian, 各种库版本不一样(从 glibc 开始), 于是 Ruby 的 vender 文件夹显然不能留, 各种清空重新跑 bundle.
  • Gitlab 用到了 Redis, 虽然主要的配置说明里没有用力提及. 因此搬的时候连 Redis 的数据库一起搬过去. (当然主力数据库比如 MySQL 也必须不能忘记啦)
  • /home/git/.ssh/authorized/keys 保存了能用 git 帐号登陆服务器的所有小伙伴的 SSH PubKey 们, 需要一起搬过来
  • gitlab-shell 需要重新安装以走进科学 (只需要跑它那个 bin/install)
  • initscript 脚本和 logrotate 配置都要重新安装不能忘记的说
  • nginx 需要访问 gitlab 的 socket, 而 rsync 过来的目录里因为 exclude 掉了 gitlab/tmp/ 里的内容, 自动新创建的目录默认会变成 700 权限, 导致 nginx 读取失败 – 嗯 chmod 回来

至于其他系统软件包和 ruby 的基本配置就不再赘述了.

最后详细记录下环境:
原服务器: Ubuntu 12.04, 开启了 nginx/git 等等 PPA. 本体是 42qu 的一台 VPS.
新服务器: Debian 7.2, 开启了 dotdeb 仓库. 本体是美团云的一台 VPS.

QR Code Business Card