My Tracking

My Tracking

記憶力の低下が気になるアラフォー男の備忘録

docker上でgitLabを動かす

こちらで、セットアップした環境で、gitLabを動かした際の備忘録。

mytracking.hatenablog.com

下記の書籍の「Docker実践活用術」の章で、 いろいろなアプリケーションのdockerでの利用例が紹介されていたので、

Dockerエキスパート養成読本[活用の基礎と実践ノウハウ満載!] (Software Design plus)

Dockerエキスパート養成読本[活用の基礎と実践ノウハウ満載!] (Software Design plus)

後述の参照URLを参考に、gitLabを動かしてみる。

目次

参照URL

手順においては、下記のURLの通り。 (※説明がシンプルで手っ取り早く、試してみたい人はおすすめのエントリ) yoru9zine.hatenablog.com

Dockerを使って、RedmineとGitLabを構築する

docker image の取得

まずは、gitlabのイメージを取得する。

[root@docker ~]# docker pull sameersbn/gitlab:9.0.3

データ保存場所の作成

データをホスト側のファイルシステムに永続化するため、下記のディレクトリを作成

[root@docker ~]# mkdir -p ~/docker-data/gitlab
[root@docker ~]# mkdir -p ~/docker-data/gitlab-redis
[root@docker ~]# mkdir -p ~/docker-data/gitlab-pgdata

gitLabを起動する。

とりあえず、よくわからないが、参照URLの通り、起動してみる。

まずは、DBから。

[root@docker ~]# docker run -d --name my-gitlab-postgres -v ~/docker-data/gitlab-pgdata:/var/lib/postgresql -e 'DB_NAME=gitlabhq_production' -e 'DB_USER=gitlab' -e 'DB_PASS=password' -e 'DB_EXTENSION=pg_trgm' sameersbn/postgresql:9.6

つぎに、key-valueデータストア?(らしい)を起動。

[root@docker ~]#  docker run -d --name my-gitlab-redis -v ~/docker-data/gitlab-redis:/var/lib/redis sameersbn/redis:latest

最後に、gitLabを起動。

[root@docker ~]# docker run -d --name my-gitlab -v ~/docker-data/gitlab:/home/git/data --link my-gitlab-postgres:postgresql --link my-gitlab-redis:redisio --publish 10022:22 --publish 10080:80 -e 'GITLAB_PORT=10080' -e 'GITLAB_SSH_PORT=10022' -e 'GITLAB_SECRETS_DB_KEY_BASE=long-and-random-alpha-numeric-string' -e 'GITLAB_SECRETS_SECRET_KEY_BASE=long-and-random-alpha-numeric-string' -e 'GITLAB_TIMEZONE=Tokyo' -e 'GITLAB_SECRETS_OTP_KEY_BASE=long-and-random-alpha-numeric-string' sameersbn/gitlab:8.15.3

gitLabの管理画面にアクセス

ここまで、訳も分からず、先述の参照URLのまんまパクリ、 以下にアクセスしてみる。

http://dockerホストのIP:10080

基本的にここまでの作業は、先述の参照URLのパクリのため、自分でも深くはよくわかっておりません。。。

そんなんで、うまくいくはずないだろ!っとタカをくくっていると・・・・



ちゃんと起動しているではないか!



当然、どうやってgitLabを使ってよいかもわかっていないので、 とりあえず、登録。

ログインできたので、プロジェクト作成。

ちゃんと、プロジェクトできてるし!

以上のように、良いか悪いかは別として、よくわかっていない自分でも、 gitHubクローンな環境が手元にできるところは凄いところ。

所属する会社は、クラウドなんてけしからん!ってな会社のため、 イントラ環境で、バージョン管理したいなんてシーンを想定して、 こちらの環境で、いろいろ学習していく予定。