GitBucketを使ってみる
GitBucketとは、日本人が作成したGitHubライクアプリである。
GitBucketは、Scalaで実装されたオープンソースのGitサーバで導入が非常に手軽である。
例えば単純に利用するだけであれば、以下のような手順だけで良い。
1.GitBucketをダウンロードする。
http://takezoe.hatenablog.com/
2.GitBucketを実行する(Javaがインストール済みであること前提)。
java -jar gitbucket.war
3.GitBucketにアクセスする。
http://localhost:8080/
DBを変更
GitBucketではデフォルトでH2というデータベースを使用しているが、
業務などで使用することを想定するのであれば、PostgreSQLやMySQLを使用することが推奨されている。
例えばPostgreSQLで設定する場合、createdbでDBを作成した後、
$HOME/.gitbucket/database.confの設定で以下のような感じに設定する。
db {
url = "jdbc:postgresql://localhost/gitbucket"
user = "test"
password = "test"
}
DBごとの詳細な手順は以下のページに記載されている。
リバースプロキシを使用
リバースプロキシを使用する場合、以下の3つの設定が必要である。
- GitBucket起動時の設定
- Apacheのプロキシ設定
- Gitbucketで設定
GitBucket起動時の設定
GitBucketではデフォルトでルートのパスになる。
これを変更する場合は以下のように--prefixオプションを指定すれば良い。
java -jar gitbucket.war --prefix=/mygitbucket
ちなみにTomcat経由でも起動できるので、その場合はTomcatの設定でコンテキストパスを指定できる。
Apache(Web)のプロキシ設定
Apacheでリバースプロキシの設定を行う場合、以下のように設定する。
(以下の例ではGitBucketのサーバのIPは172.17.0.2である)
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
ProxyPass /mygitbucket/ http://172.17.0.2:8080/mygitbucket/
ProxyPassReverse /mygitbucket/ http://172.17.0.2:8080/mygitbucket/
Gitbucketで設定
上記の設定まででも動くようだが、以下の設定を入れないと画面からリポジトリURLを取得する際などに元のURLが表示されるようだ。
- 右上の自分のアイコンをクリックして、[System administraition]を選択する。
- [System Settings]をクリックする。
- Base URLを入力する。
便利だと思ったオプション
オプション例 | 説明 |
---|---|
--port=XXX | ポート番号 |
--prefix=/XXX | パス。 |
--max_file_size | アップロード可能なファイルサイズ。 |
--validate_password=false | パスワードの文字種制限。デフォルトではtrue。制限を解除するにはfalseで指定する。LDAPを使用するなら不要(その場合は画面から設定)。 |
--gitbucket.home | GitBucketのホームのパス。 |
その他
- MySQL8の場合はDBアクセスが正常にできなかった(5.7では問題なく動いたが)。
- MySQLをUTF-8に設定( https://shio-ax.hatenablog.com/entry/2017/10/20/141958 )。