OS X YosemiteでTomcatを使い「GitBucket」を運用する方法

[PR]記事内のアフィリエイトリンクから収入を得る場合があります
  • URLをコピーしました!

NewImage

オープンソースのGitHubクローンとして人気の「GitBucket」。動作させるのに複雑な設定が必要でなく、簡単に動かせるところが人気の要因の一つとなっています。

GitBucketは、Scalaで作られていて「java -jar gitbucket.war」とすれば動かすことができますが、本格的に運用したい場合、Jetty、Tomcat、GlassFishといったJavaサーブレット用のアプリケーションサーバーにデプロイして運用した方がなにかと便利かもしれません。

今回はOS X Yosemiteで、Tomcatを使い最新版GitBucketを運用する方法を説明します。

目次

Tomcat 8の準備

Scala 2.11.0によると、GitBucket 2.2で、Scala 2.11、Scalatra 2.3、Slick 2.1が導入され、Scala 2.11がServlet 3.1を要求しています。このためGitBucket 2.2以降では、Tomcat 8.xが必要となります。

Tomcat 8をYosemiteで動かす方法に関しては以下記事を参考にしてください。

GitBucketのデータディレクトリの作成

まずgitbucketのデータディレクトリの場所決めます。

gitbucketは通常、$HOME/.gitbucketにデータを格納するため、Tomcatの実行ユーザーで同ディレクトリが作成できることが必要となります。

実行ユーザーが_wwwの場合、/Library/WebServer/.gitbucketがデフォルト。データディレクトリを変更したい場合、環境変数GITBUCKET_HOMEで指定します。環境変数はTomcatの起動スクリプト、例えばtomcat-launchd.sh等で設定すれば良いでしょう。

export GITBUCKET_HOME=/opt/home/gitbucket

Tomcatの実行ユーザーで、GITBUCKET_HOMEが作成できるかどうか分からない場合、手作業であらかじめディレクトリを作成しておくほうがトラブルが少ないかもしれません。以下、GITBUCKET_HOMEが/opt/home/gitbucketの場合。

# cd /opt/home
# mkdir gitbucket
# chown -R _www gitbucket
# chgrp -R _www gitbucket

GitBucketのデプロイ

Releasesから最新版のgitbucket.warをダウンロードし、Tomcatのwebappsディレクトリにコピーします。ブラウザでhttp://localhost:8080/gitbucketを開、アクセスできれば成功です。

GitBucket

ユーザー名:root、パスワード:rootでログインできます。

ユーザーの作成

Manage Users

rootのままだとカッコ悪いので、Administrationメニューで、普段使い用のユーザーを作成しておきましょう。

sshアクセスの有効化

GitBucketはsshサーバー機能を内蔵しているため(いわゆるsshdとは別物です)、リポジトリアクセスにsshを使うこともできます。

そのためには、Administrationメニューから、System Settingsを開いてBase URLと、SSH accessの設定を行います。

System Settings

Base URLはgitbucketにアクセスするためのURLで、例えば「srcw.net」というサーバーで動かしている場合「http://srcw.net:8080/gitbucket」となります。外部に公開せず自分だけでアクセスできれば良い場合、「http://macmini:8080/gitbucket」 (macminiはホスト名)みたいにすることもできます。

System Settings1

SSH accessは、「Enable SSH access to git repository」にチェックをいれるだけです。ポート番号はそのままで良いです。

Root sample

そうするとリポジトリにsshを使ったアクセスが可能になります。URLは「ssh://root@maroon:29418/root/sample.git」のような形式となります(ポート番号が先ほど設定したポート番号になっていることに注意してください)。

SSH Keys

ただしsshアクセスする場合ユーザーのプロファイル設定でsshの公開鍵を登録しておく必要があります。自分が使いたい公開鍵をKeyのところに貼り付けて保存しておきましょう(タイトルは何でもよい)。

まとめ

GitBucketをMacで運用する方法を説明しました。Tomcatにこだわらなければ、brew install gitbucketでインストールすることもできます。とりあえず動かしたいという場合、そちらのほうがてっとり速いかもしれません。

またhttpアクセスでパスワード入力を省略したい場合は、git-credential-osxkeychainを使うこともできます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次