2013年2月11日月曜日

GitLab4.1(Ubuntu 10.04 LTS + RVM)をインストールしてみた

GitLabとはGitHub4.3のクローンのオープンソースソフトウェアです。
今回は仮想マシンにUbuntu 10.04 LTS 64-bitをクリーンインストールしてやってみた。
基本的に本家のGitページのdoc/install/installation.mdを参考に行っただけ。
ただし、RVM(ルビーの仮想環境)を使ったのでやり方が微妙に異なります。
普通のやり方と異なるところだけ書きます。それ以外は1から順番にやってください。

2. Ruby

RubyはソースからインストールしないでRVMからインストールする。ユーザーtaro(Admin)がいるとします。taroでインストールしていきます。今回はMulti-Userモードでインストールして、どのユーザーもRVMを使えることを想定しています。
まず、RVMのインストール。通常は次のコマンドでOK。
taro$ \curl -L https://get.rvm.io | sudo bash -s stable
もしプロキシを使っていてうまく行かなかった場合は、環境変数HTTPS_PROXYをtaroで設定していたら、sudoに環境変数を渡すために-Eオプションをつけます。この後も、ネットワーク問題でハマったら、sudo -Eとしてください。

taro$ \curl -L https://get.rvm.io | sudo -E bash -s stable
これで、/usr/loca/rvmにrvmがインストールされました。

今回は、taroをrvmのAdminにするためにグループにtaroを追加して書き込み権限を付与します。

taro$ sudo usermod -aG rvm taro
~/.bashrcなどに以下を追加。
source /etc/profile.d/rvm.sh
ログインしなおして
taro$ id
...rvmがグループに追加されているのを確認
ruby 1.9.3のインストール
taro$ rvm install 1.9.3
taro$ rvm use --default 1.9.3
この時点ではbundlerはインストールしない。あとで、ユーザーgitlab(3. System Usersで追加される)だけにインストールする。

Install Gems

ユーザーgitlabにrvm環境を設定する。
taro$ sudo su - gitlab
~/.bashrcなどに"source /etc/profile.d/rvm.sh"を追加して再読み込み。
gitlab$ source .bashrc
gitlabユーザー固有のgemsetを作る。
gitlab$ rvm user gemsets
gitlab$ rvm istall 1.9.3
gitlab$ rvm use --default 1.9.3
gitlab$ rvm gemset create
gitlab$ rvm gemset use default
gitlab$ rvm gemset install bundler
gitlab$ rvm gemset install charlock_holmes --version '0.6.9'
DBにはMySQLを使ったので、without postgresでインストール。
gitlab$ cd /home/gitlab/gitlab
gitlab$ bundle install --deployment --without development test postgres

Initialise Database and Activate Advanced Features

taro$ sudo su - gitlab
gitlab$ cd gitlab
gitlab$ bundle exec rake gitlab:setup RAILS_ENV=production
ここでしくじる。execコマンドがないと怒られる。調べると、issueが投稿されてた。Squeeze-backportsリポジトリからredis-serverを入れなおせとのこと。多分RedisServerが古かったのかと思われる。Ubuntu10.04。リポジトリを追加するために、/etc/apt/sources.list.d/squeeze-backports.listというファイルに
deb http://backports.debian.org/debian-backports squeeze-backports main
を書いて保存
taro$ sudo apt-get update
キーが認証されてないとか言われたので、
taro$ sudo -E apt-key adv --keyserver keyserver.ubuntu.com --recv-keys AED4B06F473041FA
taro$ sudo apt-get update
taro$ sudo apt-get remove redis-server
taro$ sudo apt-get -t squeeze-backports install redis-server
インストールされたので、再度
gitlab$ bundle exec rake gitlab:setup RAILS_ENV=production

Check Application Status

taro$ sudo su - gitlab
gitlab$ cd gitlab
gitlab$ bundle exec rake gitlab:env:info RAILS_ENV=production
gitlab$ bundle exec rake gitlab:check RAILS_ENV=production
これで動きました。ローカルではない場合もservernameなどちゃんと設定すれば動きます。 参考: http://d.hatena.ne.jp/hiro_nemu/20120811/1344656084

0 件のコメント:

コメントを投稿