Docker + gitBucket + Dropboxでプライベートgithubな話@さくらVPS

概要

Docker上でgitBucketコンテナを動かして,gitBucketのデータ置き場をDropboxにする話.
環境は,CentOS6.5なさくらVPS.
プライベートgithub的なやつをつくろう!

経緯

さくらVPSを借りているんだけど,最近はいろいろと便利なサービスがあって,正直全然使う機会がなくなってる.

一方で,githubのプライベートリポジトリが使いたくて月額課金しているんだけど,これが地味に痛い.bitBucketとか,gitlabとか微妙に使いづらいからしょうがないかと思ってたんだけど,最近gitBucketというgithubクローンが結構いい感じなことを知った.

そんで,gitBucketのDockerイメージがDockerHubにあったので,さくらVPSにDocker導入しようと思った.
環境移行するときのラクさも考えて,データはDropboxに置くことにした.


環境

  • CentOS 6.5(kernel 2.6.32-431.11.2.el6.x86_64)

    さくら借りた時にデフォルトだったやつです.

事前準備:dropboxとの連携

dropboxをサーバで使えるようにしておく.例えばこの方のブログなどが参考になりそうだと思う.

Dockerをいれる

このへんは公式の手順どおりにいく.
yumを使うと1.5.0が入るので,最新版が欲しければyumを使わない方法が公式に載ってるのでそれを参考にする.

# docker のインストール
$ sudo yum install device-mapper-event-libs
$ sudo yum -y remove docker
$ sudo yum install docker-io
# docker初期設定
$ sudo service docker start
$ sudo chkconfig docker on
# sudoしなくていいようにdockerグループに追加
$ sudo usermod -aG docker user
$ exit
# 動作確認
$ docker info

gitBucketをDropboxにデータ置くように設定して起動する

以下のコマンドで行う.このコマンドだと8080にアクセスするとgitbucketにアクセスできる.
デフォルトユーザは,IDパスともにroot.あとはふつーのgithubみたいに使える.

# gitbucket用のディレクトリをDropboxに作る.
$ cd Dropbox
$ mkdir gitbucket
# Dropboxと紐付けてgitbucketコンテナを起動する
$ docker run -d -p 8080:8080 -v /home/user/Dropbox/gitbucket:/gitbucket sken/gitbucket

おまけ:githubからリポジトリを移行する

この方のブログを参考にした. githubからリポジトリをまるっと取ってくる.タグとかブランチもそのままもってこれる.

# githubから該当リポジトリを手元にミラーオプションでクローン
$ git clone --mirror <SOURCE_REPOSITORY_URL>
$ cd <REPOSITORY>
# gitBucketで移行先リポジトリを作っておく.ミラーオプションつけてプッシュ.
$ git push --mirror <DESTINATION_REPOSITORY_URL>