tech.log

memo.txt

UbuntuにGitLabをインストール

UbuntuにGitLabをインスコ

Gitやりましょう

参考

Ubuntu 12.04.2 LTSにGitLab5.2をインストール

Ubuntu 12.04 に GitLab 5.2 と Redmine 2.3 を構築

インストール

まんま参考URLに則ってやってみる

  • パッケージを最新に更新
$ sudo apt-get update
$ sudo apt-get upgrade
  • 依存パッケージをインストール
$ sudo apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses5-dev libffi-dev curl git-core openssh-server redis-server checkinstall libxml2-dev libxslt-dev libcurl4-openssl-dev libicu-dev postfix
  • Ruby 1.9系をインストール
$ sudo apt-get install ruby1.9.1
    ...
$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux]

1.9.1なの?1.9.3なの?

  • Gitユーザを追加
$ sudo adduser --disabled-login --gecos 'GitLab' git

ちなみに --gecos はそのユーザの本名のフィールドらしい

ここからは作ったgit用アカウントで作業する

$ sudo su git
$ cd
  • gitlab-shellをインストール
$ git clone https://github.com/gitlabhq/gitlab-shell.git
$ cd
$ cd gitlab-shell/
$ git checkout -b v1.4.0 v1.4.0
Switched to a new branch 'v1.4.0'
$ cp  config.yml.example config.yml
$ vim config.yml         // <- ドメインを変更
$ ./bin/install
  • gitlabをインストール
$ git clone https://github.com/gitlabhq/gitlabhq.git gitlab
$ git checkout -b v5.2.1 v5.2.1
$ cp config/gitlab.yml{.example,}   // <- この書き方初めて知った
$ vim config/gitlab.yml         // <- ドメイン変更
$ chown -R git log/
$ chown -R git tmp/
$ mkdir tmp/pids/
$ mkdir tmp/sockets/
$ mkdir public/uploads/
$ chmod -R u+rwX log/
$ chmod -R u+rwX tmp/
$ chmod -R u+rwX public/uploads/
$ cp config/puma.rb{.example,}
$ git config --global user.name 'GitLab'
$ git config --global user.email 'gitlab@localhost'
$ cp config/database.yml{.mysql,}
$ mysql -u root -p
mysql> create user 'gitlab'@'localhost' identified by '********';
mysql> create database if not exists `gitlabhq_production` default character set `utf8` collate `utf8_unicode_ci`;
mysql> grant select , lock tables , insert , update , delete , create , drop , index , alter on `gitlabhq_production`.*  to 'gitlab'@'localhost';
mysql> exit;

そしてdatabase.ymlに追加したアカウント情報を書く

  • 接続チェック
$ mysql -u gitlab -p -D gitlabhq_production
  • gemから必要なものをインストール
$ sudo gem install charlock_holmes --version '0.6.9.4'
Building native extensions.  This could take a while...
ERROR:  Error installing charlock_holmes:
    ERROR: Failed to build gem native extension.

        /usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
    from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from extconf.rb:1:in `<main>'


Gem files will remain installed in /var/lib/gems/1.9.1/gems/charlock_holmes-0.6.9.4 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/charlock_holmes-0.6.9.4/ext/charlock_holmes/gem_make.out

んw

mkmfってruby-devに入ってるらしい

$ sudo apt-get install ruby-dev
$ sudo gem install charlock_holmes --version '0.6.9.4'
Building native extensions.  This could take a while...
ERROR:  Error installing charlock_holmes:
    ERROR: Failed to build gem native extension.

        /usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
    from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from extconf.rb:1:in `<main>'


Gem files will remain installed in /var/lib/gems/1.9.1/gems/charlock_holmes-0.6.9.4 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/charlock_holmes-0.6.9.4/ext/charlock_holmes/gem_make.out

んんw

ruby1.9.1-devらしいです

$ sudo apt-get install ruby1.9.1-dev
$ sudo gem install charlock_holmes --version '0.6.9.4'
Building native extensions.  This could take a while...
Successfully installed charlock_holmes-0.6.9.4
1 gem installed

入った。 次でまたひっかかる。

$ sudo bundle install --deployment --without development test postgres

mysql2のインストールでこけている。ググった結果

Ubuntuでmysql2 gemが入らない。

$ sudo apt-get install libmysqld-dev 
$ sudo gem install mysql2 -v '0.3.11'
Building native extensions.  This could take a while...
Successfully installed mysql2-0.3.11
1 gem installed

mysql2入った。

改めて。

$ sudo bundle install --deployment --without development test postgres

通った。

$ sudo bundle exec rake gitlab:setup RAILS_ENV=production
    ...
    
Administrator account created:

login.........admin@local.host
password......5iveL!fe
  • 起動スクリプトの設置
$ sudo cp lib/support/init.d/gitlab /etc/init.d/gitlab
$ sudo chmod +x /etc/init.d/gitlab
$ sudo update-rc.d gitlab defaults 21
  • 起動
$ sudo /etc/init.d/gitlab start

起動は出来たみたい。

上の方の設定ファイルでgit.0q0.bizに設定してあったからブラウザからアクセスしてみるもそんなドメイン見つからんてChromeに怒られてしまった。

3分くらい悩んでから、サブドメインの設定してないことに気づいてお名前.comにて設定をした。

だいぶ待っても反映されなかったので一旦就寝。

翌日。 ブラウザでアクセスすると、"Welcome to nginx!"の表示。

gitlab/lib/support/nginx/gitlabを/etc/nginx/conf.d/gitlabにコピーしたけど、nginx.confでは.confのついたファイルを読み込む設定だったので読み込まれていなかった。

$ sudo mv /etc/nginx/conf.d/gitlab /etc/nginx/conf.d/gitlab.conf

これでアクセスすると502エラーが出たけど、gitlabが起動してないだけだったので起動したら繋がった。

gitlabのAdministratorの初期アカウントは

admin@local.host
5iveL!fe

とりあえずパスワードだけ長めに変更。

ユーザー追加は右上の"Admin area"から"New user"。

いろいろつっかかりまくったのでメモ。