GitリポジトリサーバをQNAP TS-231P上に立てる

個人用NASがほしくて購入したTS-231PでDockerを利用できるとのことだったので、Gitリポジトリも管理できるようにGogsを導入してみた。

目標

  • NAS上でGitリポジトリサーバを立てる。
  • NASの機能により、リポジトリも他のファイルと同様に管理したりバックアップを取れるようにする。

環境

  • QNAP TS-231P
    • 事前にApp CenterからContainer Stationをインストールしておく。
    • リポジトリ用のディレクトリを作成しておく。
  • WD Red 1TB 2個
    • スナップショット機能を利用するなら2TB以上のほうが良かったかも。

設定の手順

GogsのDockerイメージのダウンロード

Container Stationを起動し、ARM向けのDockerイメージをダウンロードする。 今回はRaspberry Pi2用のイメージを利用した。 Gogsイメージのダウンロード

Dockerコンテナの作成

「作成」ボタンをクリックしてコンテナを新規作成する。 Gogsイメージのダウンロード

コンテナ設定画面を開き、「詳細設定»」リンクをクリックする。
「共有フォルダー」タブを開いて「ホストからのボリューム」にリポジトリ保存先のNAS上のディレクトリを指定する。
「マウントポイント」は/dataを指定すると設定ファイルやSQLiteのDBファイルも一緒に管理できる。リポジトリのみの場合は/data/git/gogs-repositoriesを設定するとよい。
「読み取り」「書き込み」にチェックを入れておくことも忘れずに。 ディレクトリのマウント

「ネットワーク」タブを開き、適当なポート番号を設定して固定しておく。 ポート設定

「作成」ボタンをクリックしてコンテナを作成する。

後はコンテナを起動してGogsの初期設定を済ませ、適当なリポジトリをプッシュしてみる。

結果

NASの管理画面からマウントディレクトリを見てみると、プッシュしたリポジトリのフォルダが作成されている事が確認できる。 NASのディレクトリ