도커를 이용한 gitlab 구축하기.
안녕하세요. 달소입니다.
오늘은 간단한 개발서버를 구축하기이전에 개발소스들을 보관할 gitlab을 도커를 이용해서 손쉽게 구축해보도록하겠습니다.
지금 github도 프라이빗 레포지토리가 있지만,,, ㅋㅋ 홈서버를 운영하기 때문에 직접 서버내에 구축해보겠습니다.
gitlab도 CE(Comunity Edition) 와 EE(Enterprise Edition)이 있지만 CE같은경우 무료로 운영이가능하여 CE로 설치하겠습니다.
https://about.gitlab.com/
1. 사전준비
깃랩구축환경은 Ubuntu / Docker / docker-compose 입니다.
설치이전에 아래와같이 깃랩 컨테이너에 매핑시켜줄 디렉터리를 만들고 환경변수로 지정해주겠습니다.
Local location | Container location | Usage |
---|---|---|
$GITLAB_HOME/data |
/var/opt/gitlab |
응용 프로그램 데이터를 저장합니다. |
$GITLAB_HOME/logs |
/var/log/gitlab |
로그저장용 |
$GITLAB_HOME/config |
/etc/gitlab |
Gitlab의 구성파일 저장. |
mkdir -p /data/gitlab/data
mkdir -p /data/gitlab/logs
mkdir -p /data/gitlab/config
export GITLAB_HOME=/data/gitlab
2. 컨테이너 생성하기
컨테이너는 docker-compose를 생성해서 진행하겠습니다.
vi docker-compose.yml
web:
image: 'gitlab/gitlab-ce:latest'
restart: always
container_name: 'gitlab'
hostname: 'dalso-gitlab' # hostname
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://192.168.1.60' # 외부 ip 혹은 접근할 ip
# Add any other gitlab.rb configuration here, each on its own line
ports:
- '8080:80' # http 접근포트
- '8443:443' # https 접근포트
- '2222:22' # ssh 접근포트
volumes:
- '$GITLAB_HOME/config:/etc/gitlab'
- '$GITLAB_HOME/logs:/var/log/gitlab'
- '$GITLAB_HOME/data:/var/opt/gitlab'
아래처럼 구동시켜주시면 됩니다.
이미지를 받은다음 docker-compose.yml 대로 컨테이너가 생성됩니다.(2~3분 시간소요)
3. Gitlab 접근하기
접근은 위 yml 설정값대로 ip:8080 으로 접근하시면됩니다.
기본적으로 접근시 바로 pw를 변경하라고 한다고하는데,, 혹시 저처럼 기본계정 pw가없을때는
컨테이너로 직접접근해서 root 게정의 pw를 변경해주시면 됩니다.
새로 접근후에는 반드시 pw를 바꿔주세요.