VMwareイメージで公開されているGitLabを試してみる

GitLabとはGithubクローンで、要はGitリポジトリを閲覧できるソフトウェアプロジェクト管理のためのツールである。さくらのVPS 2Gを新規に契約したのでインストールしようかと思ったがRedmineと用途がかぶるうえにシステム要件もかぶる、Rubyのバージョンが微妙に違うし、GitLabの標準手順だとNginxを使うようだし、悩んでいた。先にVMware上にインストールしてためしてみるのがよいかと思ったらVMware Imageが公開されていた。

https://github.com/gitlabhq/gitlabhq/wiki/Vmware-image

しかしいろいろハマったので上記イメージから試す手順を多少手直ししておく。

notrootユーザ周り

user: notroot
pass: gitlabhqthoughtpolice

まず最初からハマったが wikiに書いてあるパスワードが違う という。チケットに問題があがっていたので解決、これはそのうちImageかWikiかが改修されるだろう。とりあえずこの時点で試した場合はパスワードは thoughtpoliceだった。

あとこのnotrootはsudo出来ないのでいろいろ困ったと思ったが、rootのパスワードもthoughtpoliceだった。

キーボード設定

とりあえず106が見つからなかったが、Generic 105-key -> Japan にすればよいらしい。

su
dpkg-reconfigure keyboard-configuration

変更後、解決しなかったがいろいろあった後に再起動したらうまく行っていた。

バーチャルホストの設定

ゲストOSでifconfigを実行してipアドレスを調べてホストOSから接続してみた。しかし接続するとなぜか http://192.168.0.105 にリダイレクトされてしまうので設定を変更した。

su
vi /etc/nginx/sites-enabled/gitlab

で 192.168.0.105 の部分をipconfigで得たIPアドレスに変更する。そしてNginxを再起動。

/etc/init.d/nginx restart

ゲストOSもDHCP設定なので設定したIPアドレスも固定ではないが、とりあえずのお試しなので良とする。

表示

自分の環境ではifconfigの結果は 192.168.1.27 だったので http://192.168.1.27 をホストOSからブラウザで開いてみた。

テストプロジェクトを作ってみたが最初は何もできない。Githubを使ったことがある人なら知っていると思うが、プロジェクトページを開いても最初のコミットをpushするやり方が表示されるだけである。しかたないので言われたとおり空のREADMEをpushしてみた。

Githubと微妙にできることが違うらしい。タブを見ている限りだとWallというページがあって、これはFacebookのWallのように小さなメッセージが書き込めるページになっている。ちょっとした進捗とかの情報共有に使われるのだろうか。

Wikiも使えてmarkdown形式で記述できるようだ。

その他

以下のコマンドがうまく行かなかったので無視してホストOSから普通にWeb UIベースでsshキーを設定した。

sudo -H -u git gitosis-init < ~/.ssh/id_rsa.pub

その他ProfileやIssueの登録などいろいろなところで500エラーになったが、原因を調査していないので不明。

感想

tracとかRedmineとかあんまりUIが今風っぽくないので代替として使ってみたかったGitLabだが、gitリポジトリありきのプロジェクトとなるとtracやredmineで管理しているようなsvnプロジェクトとか単にインストーラを配布するだけのプロジェクトなどを移行して使うのはちょっと難しいのかなという感じ。

GitLabに向いているプロジェクトはGithubに公開すればいいわけで今の所そこまでプライベートにしないといけないプロジェクトはないし、Github/gitのいいところはforkだと思っているからあまりプライベート公開を率先してもつまらないしね。

というわけで今のところはGitLabは使ってみたいけど、使う場面があまりないかなーという感じ。

人見知りソフトウェアエンジニアです。ビジュアル系、お笑い、Pixarが好き。勢いで吉本超合金おたけびBOTを作った。オールザッツ漫才が放送されない東京在住。

趣味や日常からアウトプットの場としてブログを書いています。自作のWordPressプラグインにGitHub Flavored MarkdownAmazonJSなど。