サイトアイコン MiYABiS note.

GitBucket を Windows でインストールしてみる

Windows でソース管理したくて本当は GitLab を使いたかったのだけれど簡単にはインストールできなそうなので GitBucket をインストールしてみました。

準備

Java をインストール

Windows版Javaのダウンロード から最新をダウンロードしてインストールします。(投稿時 Version 8 Update 144 )

GitBucket を取得

GitBucket から gitbucket.war をダウンロードします。
念のため最新ではなくひとつ前のバージョンにしました。(投稿時 4.14.1 )

GitBucket プラグインを取得

GitBucket Community Plugins から必要なものをダウンロードします。
今回は、下記を使うことにしました。

MySQL をインストール

デフォルトで使われている H2 から MySQL へ変更するためにインストールします。
変更しないときは不要です。

MySQL :: Download MySQL Installer から最新をダウンロードしてインストールします。(投稿時 5.7.19.0 )

インストール

インストールは不要で即実行です。
ダウンロードした gitbucket.war を適当なフォルダに移動します。
今回は C:\Dev\GitBucket へ移動しました。
Windows キーを押下して cmd と入力後 Enter キーを押下してコマンドプロンプトを起動します。

gitbucket.war の保存先へ移動します。

C:\Users\miyabis> cd /d C:\Dev\GitBucket

下記を入力して実行します。

C:\Dev\GitBucket> java -jar gitbucket.war

ブラウザで http://localhost:8080/ にアクセスするとトップページが表示されます。

設定

このままでも良いのですが、ポートやデータの保存先、ログイン方法等を環境に合わせて変更します。

ポートとデータ保存先の変更

ポートは 8200 、保存先は C:\Dev\GitBucket に変更します。
変更は起動時にパラメータを指定します。

C:\Dev\GitBucket> java -jar gitbucket.war --port=8200 --gitbucket.home=C:\Dev\gitbucket

毎回入力するのは手間なので C:\Dev\GitBucket フォルダに下記の内容で gitbucket.bat ファイルを作成します。

java -jar gitbucket.war --port=8200 --gitbucket.home=C:\Dev\gitbucket

データベースの変更

H2 から MySQL に変更します。

MySQL Workbench を起動してデータベースとユーザーを作成します。
インストール時に作成したデフォルトのインスタンスに接続し、Query のエディタータブで下記を実行します。

CREATE DATABASE gitbucket;
GRANT ALL ON gitbucket.* to gitbucket@localhost IDENTIFIED BY 'パスワード';
FLUSH PRIVILEGES;

接続先を MySQL に変更します。
C:\Dev\GitBucket フォルダに下記の内容で database.conf ファイルを作成します。

db {
  url = "jdbc:mysql://localhost:3306/gitbucket?useUnicode=true&characterEncoding=utf8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC&useSSL=false"
  user = "gitbucket"
  password = "パスワード"
}

ログイン方法の変更

LDAP 認証

社内で使うとなると ActiveDirectory のユーザーで使いたいのでユーザー登録制ではなく LDAP 認証にします。

C:\Dev\GitBucket> echo %logonserver:~2%.%userdnsdomain%

root ユーザーの無効化

LDAP認証で root ユーザーでログインすると ActiveDirectoy へ認証しにいってしまいます。
企業の場合、不正アクセスとしてみなされてセキュリティ事故扱いされかねません。
root ユーザーは使わず管理者を自分へ変更します。

もしログインできなくなったときは gitbucket.conf ファイルの中の ldap で始まる行をすべて削除すると LDAP 認証の設定が初期化されます。

サービス起動

サービス起動にするならGitBucket を Windows サービスとして起動させてみたを参照してください。