前回、RapberryPiのDockerでGitbucketを動かすという記事を書きましたが、やっぱりDocker上だと重かったです…
Dockerでnginxやphp-fpmで軽量のアプリケーションを動かす程度であれば全然大丈夫だと思うのですが、Javaを動かすのは流石にRasperryPi3といえど厳しかったです。

そこで、Dockerはやめて直接GitBucketをRaspberryPi3へインストールして利用することにしました。

概要

  • RaspberryPi3へGitBucket4.10.0(2017/3/19時点の最新)をインストールする
  • 保存先データは外付けHDD

外付けHDDのフォーマットとマウント

フォーマットの細かい手順は省略するとして、RaspberryPi3でXFSフォーマットするには、下記パッケージが必要なのでインストールします。

[code lang=”bash”]
$ sudo apt-get install xfsprogs
[/code]

これでXFSでフォーマットができるようになります。
あとは、いつも通りに、

[code lang=”bash”]
$ sudo fdisk -l <– ブロックデバイス名を確認する
$ sudo fdisk /dev/sda
[/code]

もともと使っていたHDDであれば「d」オプションでパーティション消して、「n」で作成します。最後に「w」で書き込み。
パーティションが作成できたら、mkfsでXFSフォーマットします。

[code lang=”bash”]
$ sudo mkfs.xfs /dev/sda
[/code]

XFSフォーマットが完了したら、外付けHDDをマウントする先を準備します。

[code lang=”bash”]
$ mkdir /mnt/usbhdd/
[/code]

fstabにマウント先を書いて、再起動後もマウントされるようにします。

[code lang=”bash”]
$ sudo vim /etc/fstab
~~ snip ~~

/dev/sda1 /mnt/usbhdd xfs rw 0 0
[/code]

保存したらマウントします。

[code lang=”bash”]
$ sudo mount -a
$ df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
~~ snip ~~

/dev/sda1 233G 101M 233G 1% /mnt/usbhdd
[/code]

ここまできたら外付けHDDの準備はOKです。

GitBucketをインストールする

GitBucketはJavaで動いており、Javaのインストールが必要です。

[code lang=”bash”]
$ sudo apt-get install oracle-java8-jdk
[/code]

インストールが終わったら、Gitbucketを保存する先を作成します。※上記で作成した外付けHDDの先。

[code lang=”bash”]
$ mkdir /mnt/usbhdd/gitbucket
[/code]

次に、GitBucketのGithubページで最新のgitbucket.warをダウンロードします。

[code lang=”bash”]
$ cd /mnt/usbhdd/gitbucket
$ sudo wget -O gitbucket.war https://github.com/gitbucket/gitbucket/releases/download/4.10/gitbucket.war
[/code]

対象のgitbucket.warを使って、データが外付けHDDへ保存されるようにオプションを指定して起動します。

[code lang=”bash”]
$ sudo java -jar /opt/gitbucket/gitbucket.war –gitbucket.home=/mnt/usbhdd/gitbucket/&
[/code]

そうすると、バラバラとログが流れるかと思います。
ブラウザで、http://RaspberryPiのIPアドレス:8080/ へアクセスして、「root/root」でログインできればOKです。
あとはrootのパスワードを変更したり、使用するユーザーを追加したり、リポジトリを追加したりすると良さそうです。

試してみる

MacにVagrant環境がなかったので、セットアップついでにgit-flowの流れで使い勝手を試してみました。

普通に使えますね!素晴らしい!!
外付けHDDへデータ保存するようにしたので、応答がタイムアウトするようだと厳しいなぁと思ったのですがストレスなく使えてます。
インストールだけならめちゃ簡単だし、外付けHDDとかあれば保存容量を気にせずに使えます。
自宅のなにがしをGit管理したいけど、外で管理したくないな〜って人にはオススメです。

今まで投げてきたけど、ついに自宅サーバーを構成管理しちゃうかなぁ〜。

おしまい。

参考にさせていただいたサイト

Raspberry Pi 2にGitBucketをインストールする