GitLab설치 (Docker)

2019-11-28

이전 포스팅에서는 GCP에 gitlab-ce를 설치해봤는데.
왜 docker를 사용하지 않았을까? 라는 생각을 해서
한번 시도해봤다.

이번 설치는 사내의 dev서버에서 진행했으며
설치된 gitlab-ce는 팀내 저장소 및 issue tracking으로 사용할 예정이다

docker 설치 (docker-compose 설치)

1
2
3
4
5
# yum package update
sudo apt-get update

# docker install
curl -fsSl https://get.docker.com/ | sudo sh

docker-compose 설치

1
2
3
4
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

docker-compose.yml 파일 생성

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
web:
image: 'gitlab/gitlab-ce:lastest'
restart: always
hostname: 'gitlab.example.com'
environment:
GITLAB_OMNIBUS_CONFIG:
external_url 'http://gitlab.example.com:8929'
gitlab_rails['gitlab_shell_ssh_port'] = 2224
# smtp 설정 gmail
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = 'smtp.gmail.com'
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = 'thinkub0219@gmail.com'
gitlab_rails['smtp_password'] = '이메일 비밀번호'
gitlab_rails['smtp_domain'] = 'smtp.gmail.com'
gitlab_rails['smtp_authentication'] = 'login'
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
gitlab_rails['smtp_openssl_verify_mode'] = 'peer'
ports:
- '2224:22'
- '80:80'
- '443:443'
volumes:
- '/home/gitlab/config:/etc/gitlab'
- '/home/gitlab/logs:/var/log/gitlab'
- '/home/gitlab/data:/var/opt/gitlab'

docker-compose로 설치

1
sudo docker-compose up -d

간혹 아래와 같은 오류를 만날 수 있다

1
2
ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running?
....

도커 데몬이 안돌고 있다

1
2
3
4
5
6
systemctl status docker

● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
Active: inactive (dead)
Docs: https://docs.docker.com

dead 상태이니 running 상태로 바꿔보자

1
systemctl start docker

접속 확인

위 설정 한 External URL : port 정보로 접속을 해보면 접속이 잘된다.
로그인 계정은 admin@example.com 으로 최초 로그인시 password를 입력하면 된다.

문제점

Email이 발송되지 않는 문제가 있다.
흠 이래저래 해보는데 되지 않아서 이부분은 좀더 확인 후에 포스팅 할 예정이다.

참고

docs.gitlab.com/omnibus/docker
docs.gitlab.com/omnibus/docker/#install-gitlab-using-docker-compose
docs.docker.com/compose/install