GitHubみたいなものを自社のサーバ上で動かしたいという場合、 GitHub Enterprise以外では GitLabというのが有名です。
私自身でインストールしたことは無いのですが、Community Editionならば debやrpmも提供されていますので、 それを使うのがてっとり早いと思われます。
他の選択肢として最近話題になってるのは GitBucket です。Scalaで書かれており、warファイルをダウンロードして、
$ java -jar gitbucket.war
でとりあえず動いてしまうお手軽さです。
さて、Apache HTTP ServerをフロントにおいてSSL経由でアクセスできるように したいと思ったのでその時のインストールメモを書いておきます。まだ実運用に 至ってないので準備段階の殴り書き程度です。インストールの条件は以下のとおり。
というわけで、ざっくりとした手順です。
# 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> -->
となっているところを適切に設定するといいのかも。
セコメントをする