はじめに
業務の中でGitLabとAWXを使用したCICD環境に触れる機会がありました。
それと同じような環境を自分でも構築してみたい、勉強がてら気軽に検証できる環境を構築したいと思い、まずはGitLabをDockerコンテナで起動させてみることに。
本記事ではGitLabをDockerコンテナで起動するために実施したことを紹介します。
環境
- Ubuntu 20.04 LTS
- Docker version 20.10.7
イメージの取得
GitLabのDockerイメージはここにあります。
Docker pullコマンドを実行します。
$ sudo docker pull gitlab/gitlab-ee
Using default tag: latest
latest: Pulling from gitlab/gitlab-ee
35807b77a593: Pull complete
5de1c691df49: Pull complete
a9608775a0bd: Pull complete
c51cf31e3c16: Pull complete
803835994a8a: Pull complete
6b08dcdbeee2: Pull complete
f6ba44e7c742: Pull complete
c81892b985f4: Pull complete
Digest: sha256:f27e65c1ed79df94f1add05c77ef6f37d46441343e06787a5cec17a78ed552a1
Status: Downloaded newer image for gitlab/gitlab-ee:latest
docker.io/gitlab/gitlab-ee:latest
doker imagesを実行し確認します。
$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
gitlab/gitlab-ee latest 0583d8671a45 7 days ago 2.46GB
イメージの取得ができていることが分かります。
コンテナ起動
イメージの取得ができたら、実際にコンテナを起動させてみます。
既に80ポートで他のコンテナが起動していたため競合を避けるため8010ポートを指定しました。
$ sudo docker run --detach \
--hostname gitlab.example.com \
--publish 4431:443 --publish 8010:80 \
--name gitlab \
--volume /srv/gitlab/config:/etc/gitlab \
--volume /srv/gitlab/logs:/var/log/gitlab \
--volume /srv/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ee
0d3c373b6c9438b6cce59412338ee49e4270e1eb6fd75ddef10bc69b8267ced4
プロセスを確認します。
$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
49f531500305 gitlab/gitlab-ee "/assets/wrapper" 12 hours ago Up 12 hours (healthy) 22/tcp, 0.0.0.0:8010->80/tcp, :::8010->80/tcp, 0.0.0.0:4431->443/tcp, :::4431->443/tcp gitlab
アクセス
コンテナが起動できたので、アクセスしてみます。
サインイン画面が表示されました。
無事GitLabをDockerコンテナで起動させることができました。
サインイン
実際にサインインしてみます。
初期ユーザとしてrootユーザが存在しています。
パスワードはコンテナ内の/etc/gitlab/initial_root_passwordに記載されているので下記コマンドで確認します。
$ sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
Password: ************************************
表示されたパスワードでサインインします。
サインインできました。
おわりに
DockerコンテナでGitLabを起動できました。
次は同様にAWXをDockerコンテナで起動させてみようと思います。