今天把一台服务器上的 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.
authorized_keys 可以用 rake 任务重新生成的
哦哦, 是哪个任务呢? 我在文档里木有发现0.0
https://github.com/gitlabhq/gitlabhq/issues/3120
wow 多谢, 之前没找到这个的说 😀
喵窝竟然还在……
哈哈, 为了避免完全荒废, 偶尔还是会来一发的(
居然没有被redis-server坑,不幸福…
Pia!<(=o ‵-′)ノ☆
走进科学太不科学了!居然吃删除线!说好的走进科学呢!
蛤蛤蛤蛤蛤蛤蛤蛤蛤蛤蛤蛤蛤蛤蛤蛤蛤蛤
走进̶科̶学̶?