LoginSignup
16
21

More than 3 years have passed since last update.

DockerでGitBucketのコンテナを作成し永続化させる

Last updated at Posted at 2018-02-26

GitBucketのサーバをdockerで作成した時のメモです.docker上のコンテナで作成したリポジトリ情報が,コンテナを破棄した時に同時に消滅してしまうので,dockerのデータボリューム機能を用いて永続化をしました.

またdockerのサーバの引っ越しのたびに,コマンドを打ち直すのも面倒なので,docker-composeを利用して,簡略化しました.

ファイル構成は以下の通り.

.
|-gitbucket/
|     '-Dockerfile
'-docker-compose.yml

GitBucketのDockerfile

./gitbucket/Dockerfile
FROM tomcat:8-jre8

ADD https://github.com/gitbucket/gitbucket/releases/download/4.14.1/gitbucket.war /opt/gitbucket.war

RUN ln -s /gitbucket /root/.gitbucket

VOLUME ./gitbucket/gitbucket-data:/gitbucket

EXPOSE 8080 29418

CMD ["java", "-jar", "/opt/gitbucket.war"]

docker-compose.ymlの設定

./docker-compose.yml
version: '2'
services:
  gitbucket:
    image: gitbucket:0.1
    ports:
      - 8080:8080
      - 29418:29418
    volumes:
      - ./gitbucket/gitbucket-data:/gitbucket
    restart: always

./docker-compose.yml内のvolume機能で,コンテナ内の/gitbucketのデータをローカルの./gitbucket/gibucket-dataで共有する.
またrestart:alwaysとすることで,OS再起動時に,コンテナも自動的に再起動するようにできるので必要があれば記述する.

コンテナの起動

コンテナの起動は以下のコマンドで一発.

$ docker-compose up

起動するとgitbucketディレクトリ内に,リポジトリやアカウント情報を持ったgitbucket-dataフォルダが生成される.

.
|-gitbucket/
|     |-Dockerfile
|     '-gitbucket-data/ 
'-docker-compose.yml

http://localhost:8080 にアクセスして以下の画面が表示されれば成功.
スクリーンショット 2018-02-26 16.06.55.png
初期のユーザ名とパスワードは両方ともroot

参考

https://qiita.com/suzukihi724/items/7859724c9a0e44bf1730
https://qiita.com/eijenson/items/25b35916afa38cdf9cea

16
21
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
21