さくらインターネットの VPS に入れた Debian wheezy で gitlab 動かすメモ


gitlab の 5.2-stable を入れた。
公式のインストールマニュアル 通りにいかなかった部分を記述する。

/usr/bin/python2 というシンボリックリンクを作る

マニュアルにちゃんと記載されているのだが、 python のバージョンが最初から 2 だったので見落としてしまっていた。

redis のバージョンを 2.0.0 以上にする

apt で入るバージョンは 1.2.6 のため、 gitlab のチェックコマンドで警告となる。 apt で入れたものを削除し、ソースをビルドしてインストールする。

% sudo apt-get remove redis-server
% wget http://redis.googlecode.com/files/redis-2.6.13.tar.gz
% tar xvf redis-2.6.13.tar.gz
% cd redis-2.6.13
% make
% sudo make install
% cd utils
% sudo ./install_server.sh

git のバージョンを 1.7.10 以上にする

redis と同様。

# 依存パッケージをインストール
% sudo apt-get build-dep git
# apt で入れた git をアンインストール
% sudo apt-get remove git git-core
# 確認: git が rc となっていること
% dpkg -l | grep git
# ビルド
% wget https://github.com/git/git/archive/v1.8.3.zip
% unzip v1.8.3.zip
% cd git-1.8.3
% make configure
% ./configure  --with-curl --with-expat
% make
% sudo make install
# 確認
git --version

gitla のチェックコマンドで例外発生

エラー: undefined method `match' for nil:NilClass

原因は git コマンドが見つからないため。 config/gitlab.yml の 151 行目に、 git のパス設定があり、これが /usr/bin/git となっている。これを環境に合わせて (今回は /usr/local/bin/git に) 変更する。

nginx のポート番号を変更

nginx の設定の他に、 gitlab の設定変更も必要。
gitlab-shell/config.yml にて gitlab_url にポート番号を指定する。

gitlab サービス開始でエラー

sudo service gitlab start を実行すると

root は sudoers ファイル内にありません。この事象は記録・報告されます。
root は sudoers ファイル内にありません。この事象は記録・報告されます。
GitLab service started

と表示されるのに起動しない場合。
root が git に su できていないので /etc/sudoers に

root ALL=(ALL:ALL) ALL

と追記する。