GitosisからGitLabに乗り換えメモ
Gitosisはパッケージで入れたものを使っていた。
リポジトリが増えてGitosisの設定ファイルも増えてきたのでGitLabを使ってみる。
https://github.com/gitlabhq/gitlabhq/blob/5-0-stable/doc/install/installation.md
ここを参考に、ちょっと変えつつインストール。
sudo adduser --disabled-login --gecos 'GitLab' git usermod -a -G git www-data su git cd bash git clone https://github.com/gitlabhq/gitlab-shell.git cd gitlab-shell/ cp config.yml.example config.yml vi config.yml # urlを変える mkdir ../repositories
※ 追記:インストールしてみて、gitosisユーザーを使うとpush出来なかったので素直にgitユーザーを追加して/home/gitを使うやり方に変えた。
※ 追記2:やり直したけどまだ無理・・・
※ 追記3:以前のgitosisユーザーでunicormやsidekiqのサービスが落ちてなかったのが原因だった。gitlab-shellがgitosis環境で実行されてしまっていた。gitlab起動スクリプトを間違えた場合はきちんと落ちているか確認しましょうという教訓。それからRVMを使っている場合は ~git/.ssh/environment に環境変数を設定*1も必要だった。
rubyを入れるのを忘れていた。
cd \curl -#L https://get.rvm.io | bash -s stable --ruby
前は出来たのに、今回はsudoでパスワードを聞かれて停止する。
Searching for binary rubies, this might take some time. No binary rubies available for: debian/6.0.7/x86_64/ruby-1.9.3-p392. Continuing with compilation. Please read 'rvm mount' to get more information on binary rubies. Installing requirements for debian, might require sudo password. [sudo] password for gitosis:
rvm --version rvm 1.19.0 (master) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]
logディレクトリを見ると、ダミーパッケージgit-coreをインストールしようとしている?色々見たけどsudoを使わないでやろうとすると進まないので前回入れたバージョンを指定してインストール。
\curl -#L https://get.rvm.io | bash -s stable --version 1.18.19 --ruby=1.9.3
こういう指定ができるのがいいね。
source ~/.rvm/scripts/rvm gem install bundler ./bin/install cd git clone https://github.com/gitlabhq/gitlabhq.git gitlab cd gitlab git checkout 5-0-stable cp config/gitlab.yml.example config/gitlab.yml vi config/gitlab.yml # hostの変更、emailの変更 mkdir ../gitlab-satellites mkdir tmp/pids cp config/unicorn.rb.example config/unicorn.rb cp config/database.yml.postgresql config/database.yml vi config/database.yml # database、username、password設定、postgresqlユーザーとデータベースを作る # rootで aptitude install libicu-dev aptitude install libxslt1-dev aptitude install redis-server gem install charlock_holmes --version '0.6.9' vi Gemfile # Gemfile の gem pgの後の group: postgres を削除 bundle install --deployment --without development test bundle exec rake gitlab:setup RAILS_ENV=production # rootで curl --output /etc/init.d/gitlab https://raw.github.com/gitlabhq/gitlab-recipes/master/init.d/gitlab chmod +x /etc/init.d/gitlab update-rc.d gitlab defaults 21 /etc/init.d/gitlab restart bundle exec rake gitlab:env:info RAILS_ENV=production bundle exec rake gitlab:check RAILS_ENV=production # テスト bundle exec rails s -e production
依存関係はエラーが出るたびにメッセージを見てインストールした。エラーメッセージが分かりやすくて良い。
gitlab:check でエラーが出てるけどメッセージに従って設定しても直らないみたい。気にせず続けた。
ip:3000 でアクセスしてテスト。
Apacheで動かす設定。
http://blog.iss.ms/2012/09/02/030507
http://d.hatena.ne.jp/akishin999/20120403/1333413971
だいたいここの通り。
ログインなどはできたけど、エラーでプロジェクトが作成できない。
https://github.com/gitlabhq/gitlab-public-wiki/wiki/Trouble-Shooting-Guide
解決方法はここに書いてあった。
echo "deb http://backports.debian.org/debian-backports squeeze-backports main" >> /etc/apt/sources.list apt-get update apt-get -t squeeze-backports install redis-server
操作はだいたいgithubと同じ。
*1: これも Trouble Shooting Guide https://github.com/gitlabhq/gitlab-public-wiki/wiki/Trouble-Shooting-Guide に書いてあった