GitBucket 3.2でGitサーバーの構築(Ubuntu 14.04)

共同で開発をする際にGitを用いて、バージョン管理がしたい。だけど、訳あってソースコードは公開できない。できれば無料でなんとかしたい。という状況になりました。そこで、ローカルの環境にGitサーバーを構築しました。

既存のサービスの比較
  • GitHub (外部サービス)
    • とても使いやすい, キャラが可愛い
    • プライベートリポジトリ有料
  • BitBucket (外部サービス)
    • プライベートを作れるけど、メンバーが 5ライセンスまで
    • 使い慣れてない…
  • GitLab (ローカル)
    • 企業が開発してるから、サポートがちょっと安心
    • 重い(らしい) UIがあまり好きじゃない
  • GitBucket (ローカル)
    • GitHubみたいで使いやすい
    • 個人開発なため、サポートがちょっと不安

(※この比較はあくまで個人の意見です。参考程度でお願いします。)

そこで、最近ホットなGitBucketを構築してみました。

 

環境
  • Ubuntu Server 14.04 LTS (64bit)
  • GitBucket 3.2
  • java8 (java-8-oracle)

練習環境として、MacBookのVirtualBox上にUbuntuをインストールしています。

 

インストール

 

Java8

GitBucketはjavaで動いているので、現状の最新版であるjava8をインストール。

参考サイト
UbuntuにJava8環境構築 | Qiita
[http://qiita.com/ayihis@github/items/01f95d5d465168043ae3]

Ubuntu 14.04にはjava8のリポジトリを追加してから、インストール。

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

PCスペックのせいか、ダウンロード含めて多少時間がかかりました。(5分ぐらい?)

参考サイトには、パッケージの設定という画面がでてきたようですが、特になにもなく普通にインストールが完了しました。


which java
--> /usr/bin/java
# これだと、実行する時のパスしかわからない。

java -version
--> java version "1.8.0_45"
--> Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
--> Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)

sudo update-java-alternatives -l
--> java-7-oracle 2 /usr/lib/jvm/java-7-oracle
--> java-8-oracle 1 /usr/lib/jvm/java-8-oracle
# 複数のバージョンがインストールされていると複数表示される

 

GitBucket

GitBucketのGitHubページ
[https://github.com/takezoe/gitbucket]

GitBucketの実行方法には2種類あって、①”必要なものをすべて自分で用意してその環境で動作させる”方法と、②”.warに必要なものがすべてまとめられていてそれを実行する”方法があります。ここで、今回は②の方法を用いて、環境を構築しました。

GitHubにあるGitBucketのreleaseページから、最新バージョン3.2のgitbucket.warをダウンロードしてきました。
[https://github.com/takezoe/gitbucket/releases]

wget https://github.com/takezoe/gitbucket/releases/download/3.2/gitbucket.war

そして、これを実行します。実行時のオプションとして

–port=[NUMBER] –prefix=[CONTEXTPATH] –host=[HOSTNAME] –gitbucket.home=[DATA_DIR]

が利用できるそうです。なにも設定しないで実行した場合には、ポートは8080で~/.gitbucket/ 以下にいろいろなファイルが生成されます。


java -jar gitbucket.war

[https://(IPアドレス):8080/]にアクセスしてみると…

スクリーンショット 2015-05-14 19.47.27

わぉ。GitBucketが構築できている…。。。すげぇぇ

初期設定では、rootユーザーにパスワードがrootでログインできます。ログイン後に右上の設定からアカウントを追加できます。その他の使い方については、ほどんどGitHubと同じなので、使ってみればわかると思います。

GitBucketの画像
スクリーンショット 2015-05-14 23.53.56

見慣れた画面

スクリーンショット 2015-05-14 23.53.07

とてもきれいなエディター

スクリーンショット 2015-05-14 23.49.44

リポジトリ

スクリーンショット 2015-05-14 23.52.31

ソースコードにもしっかり色がついてる

 

javaバージョンの切り替え

2つ以上のjavaのバージョンを切り替えて利用したい時はalternativesというコマンドを利用すると、便利です。

参考サイト

UbuntuにJava8をいれた (define -ayalog ‘())| HatenaBlog

[http://ayato.hateblo.jp/entry/20140307/1394161015]

# バージョンの一覧を見る

sudo update-java-alternatives -l

--> java-7-oracle 2 /usr/lib/jvm/java-7-oracle
--> java-8-oracle 1 /usr/lib/jvm/java-8-oracle

# バージョンの切り替え

sudo update-java-alternatives -s java-7-oracle

最初にupdate-alternativesに登録?してjavaのバージョンを管理するという記事をみていたのですが、javaに関してはupdate-java-alternativesを利用したほうが便利そうです。

 

ちなみに、gitbucket3.2はjava7でもjava8でも動作しました。

 

まとめ

GitBucketを使ってみた感想として、「むっちゃGitHubだな」って思いました。想像以上にGitHubです。UIもものすごく使いやすいです。ただ、まだ少々バグがあるようです。

個人開発なので、サポートがちょっと不安ですが…プライベートリポジトリを作り放題!
とても便利なので、ぜひ今後もバージョンアップしていっていただきたいと思います。

 

開発者のtototoshi様ありがとうございます。

 

 

訂正:

javaバージョン切り替え 付近
altiernatives -> alternatives
誤字を訂正しました。

2 thoughts on “GitBucket 3.2でGitサーバーの構築(Ubuntu 14.04)

  1. moni

    altiernativesってコマンドの綴りが事故ってますね!

    altiernativesでyahoo!検索したら一番上に出てきました!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください