[Docker] GitBucketを独自ドメインでさくっと立ち上げる
簡単に自分専用GitHubを作れる、GitBucketをDockerを使って独自ドメインでさくっと立ち上げます。
更新日: 2018.7.17公開日: 2017.11.27
GitBucketとは?
GitBucketは、GitHubクローンと呼ばれる、自分専用のレポジトリサービスを立ち上げることができるOSSです。日本人の方が開発されているそうです。
同じGitHubクローンでは、GitLabが人気ですが、GitBucketのほうが軽量で限られたサーバースペース(ラズパイ3レベル)でもサクサク動いてくれるのが特徴です。
公式イメージ&ページ
GitBucketの作者の方がDockerイメージをアップしてくれています。
イメージは「takezoe/gitbucket」でPULLすることができます。
使い方などの公式ページはGitHub上に公開されています。
gitbucket-docker | GitHub
docker-composeファイルを用意
公式ページではDocker Runでの使い方が説明されていますが、一元管理&サーバー移転を考えてdocker-composeで構築します。
docker-compose.yml
nginx-proxy+let’s encryptコンテナが立ち上がっている前提です。
データを永続化させるために、docker-compose.ymlと同じディレクトリのdataフォルダを、dataコンテナに読み込ませています。こうすることで、バックアップファイルのダウンロードやGitBucketプラグインの追加などが簡単になります。
environment部分は、let’s encryptコンテナに渡すSSL用の設定です。
gitbucket:
image: takezoe/gitbucket
container_name : gitbucket-apps
hostname: git.example.jp
environment:
VIRTUAL_HOST: git.example.jp
VIRTUAL_PORT: 8080
LETSENCRYPT_HOST: git.example.jp
LETSENCRYPT_EMAIL: [email protected]
LETSENCRYPT_TEST: "false"
volumes_from:
- data
ports:
- "8080"
restart: always
data:
image: busybox
container_name: gitbucket-data
volumes:
- ./data:/gitbucket
GitBucketを立ち上げる
docker-compose.ymlがあるディレクトリでdocker-compose upするだけです。
docker-compose up -d
立ち上げたばかりは、環境によっては起動に少し時間がかかります。
docker-compose.ymlで指定したドメイン(ここではgit.example.jp)にアクセスすると、立ち上がっていることが確認できます。
初期アカウントは、ユーザー名:root、パスワード:rootです。
さくっと独自ドメインでGitBucketを立ち上げました。
同じGitHubクローンでも、4GBメモリとマルチコアを推奨するGitLabよりもかなり軽量で、低スペックなサーバー(Google Compute Engine f1-micro)でもサクサク動いてくれました。
個人用途なら、クラウドでアップしておいて、使うときだけサーバーを立ち上げて、使い終わったら落とすなんてやり方も、低予算で使えるのでいいですね。
機能的にも、自分の用途では十分っぽいので、GitLabから移行させたいと思います。