Ubuntu 12.04 で GitBucket を動かす2014年05月21日

GitHubみたいなものを自社のサーバ上で動かしたいという場合、 GitHub Enterprise以外では GitLabというのが有名です。

私自身でインストールしたことは無いのですが、Community Editionならば debやrpmも提供されていますので、 それを使うのがてっとり早いと思われます。

他の選択肢として最近話題になってるのは GitBucket です。Scalaで書かれており、warファイルをダウンロードして、

$ java -jar gitbucket.war

でとりあえず動いてしまうお手軽さです。

さて、Apache HTTP ServerをフロントにおいてSSL経由でアクセスできるように したいと思ったのでその時のインストールメモを書いておきます。まだ実運用に 至ってないので準備段階の殴り書き程度です。インストールの条件は以下のとおり。

  • OSはUbuntu 12.04
  • Apache HTTP Serverは https://host.example.com/ で稼働中であるとする
  • https://host.example.com/gitbucket/ でアクセスできるようにしたい

というわけで、ざっくりとした手順です。

# apt-get install tomcat7
# cp /some/where/gitbucket.war /var/lib/tomcat7/webapps/
# vi /etc/tomcat7/server.xml
     <!-- Define an AJP 1.3 Connector on port 8009 -->
     <!--
     <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
     -->
のコメントアウトしてるのを外して有効化する。
     <!-- Define an AJP 1.3 Connector on port 8009 -->
     <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
# a2enmod proxy
# a2enmod proxy_ajp
# vi /etc/apache2/sites-available/host.example.com
<VirtualHost *:443>
    ServerAdmin webmaster@example.com
    ServerName host.example.com
    (略)
    ProxyRequests Off
    ProxyPreserveHost On
    # /etc/tomcat7/server.xml の AJP 1.3 Connector のポート番号を指定
    ProxyPass /gitbucket ajp://localhost:8009/gitbucket
</VirtualHost>
# chmod 777 /usr/share/tomcat7
# service tomcat7 restart
# service apache2 restart
(ここで https://host.example.com/gitbucket/ にアクセスしてみる)
# chmod 755 /usr/share/tomcat7

こんな感じです。gitbucket はデフォルトのままだと /usr/share/tomcat7/.gitbucket という ディレクトリを tomcat が動いてる権限で作成するので chmod とか chgrp とかしないと うまく動かないかもしれません。

あるいは、WEB-INF/web.xml で

  <!--
  <context-param>
    <param-name>gitbucket.home</param-name>
    <param-value>PATH_TO_DATADIR</param-value>
  </context-param>
  -->

となっているところを適切に設定するといいのかも。

<< 2014/05 >>
01 02 03
04 05 06 07 08 09 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

RSS