2年くらい前にCentOS5にGitLab5を入れようとしてすごく大変だった思い出があり、githubクローンのインストールは僕の中で非常に大変な作業という印象があったのですが…
GitBucketがあまりにも簡単にインストールできてもうびっくりで感動でした。
ただ、一箇所だけハマったところがあったので、その注意点を書くためにこのエントリを書いてます。
GitBucketはScalaで書かれたgithubクローンで、Scalaなのでjavaで動きます。
今回はCentOS6に入れたのですが、Tomcat7以上で動くとのことで、Java7とTomcat7のインストールを行います。
これは下記エントリのようにjpackageのリポジトリを使ってインストールすると簡単です。
GitBucketを5分で導入する方法 | りぐん怪獣じゃないもん!
ただ、そのままだとGPGの署名チェックで失敗するので、下記エントリのように /etc/yum.repos.d/jpackage.repo の「gpgcheck=0」に修正してやります。
CentOS6にJDK8・Tomcat7の環境を構築した時に詰まった話 | Hack
なんとこれだけでインストール終わりです。
あとはブラウザでアクセスするだけ… GitLabであんなに苦労したのは何だったのかと。
しかし、自分の環境ではこれだけではうまく動いてくれませんでした。
上のエントリーで
GitBucketの管理ディレクトリがtomcatのホームディレクトリに作られるんだけどホームディレクトリがないとエラーになる。
と書いてあるように、GitBucketの管理ディレクトリ .gitbucket がtomcatのホームディレクトリに作られます。
普通にyumでインストールすると、tomcatユーザのホームディレクトリは /usr/share/tomcat7 になりますが、ownerはrootになっているため、tomcatの権限で .gitbucket を作るときに失敗してしまいます。
そこで、chownでownerを変更してやります。
$ sudo chown -R tomcat.tomcat /usr/share/tomcat7
tomcatのページは表示されて、GitBucketのwarファイルの自動展開も行われているのに、ページの表示が行われない場合、ここをチェックしてみると良いと思います。
まとめると
yum install java-1.7.0-openjdk-devel yum install yum-plugin-priorities rpm -Uvh http://mirrors.dotsrc.org/jpackage/6.0/generic/free/RPMS/jpackage-release-6-3.jpp6.noarch.rpm
/etc/yum.repos.d/jpackage.repo 修正
gpgcheck=0
yum install tomcat7-webapps wget https://github.com/takezoe/gitbucket/releases/download/2.0/gitbucket.war mv gitbucket.war /var/lib/tomcat7/webapps/ chown -R tomcat.tomcat /var/share/tomcat7 service tomcat7 start