docker gitlab 설치

Gitlab 설치

소스 버전관리 및 웹에서 확인 가능
프로젝트 관리, 이슈관리, 리뷰, 할일관리, 자동배포 및 도커저장소 지원

Quick Start

docker-compose.yml 다운로드 > 설정변경 > docker-compose up -d

설정변경
– redis :
volumes:
– ./redis:/var/lib/redis:Z

postgresql:
volumes:
– ./postgresql:/var/lib/postgresql:Z
environment:
– DB_USER=****
– DB_PASS=****

gitlab:
volumes:
– ./gitlab:/home/git/data:Z
– /etc/letsencrypt/live/domainname/fullchain.pem:/home/git/data/certs/gitlab.crt
– /etc/letsencrypt/live/domainname/privkey.pem:/home/git/data/certs/gitlab.key
– ./logs:/var/log/gitlab
environment:
– DB_PASS=****
– TZ=Asia/Seoul
– GITLAB_TIMEZONE=Seoul
– GITLAB_HTTPS=true
– SSL_SELF_SIGNED=true
– GITLAB_HOST=domainname
– GITLAB_PORT=443
– GITLAB_SSH_PORT=10022
– GITLAB_SECRETS_DB_KEY_BASE=****(각각 pwgen 이용 랜덤생성)
– GITLAB_SECRETS_SECRET_KEY_BASE=****(각각 pwgen 이용 랜덤생성)
– GITLAB_SECRETS_OTP_KEY_BASE=****(각각 pwgen 이용 랜덤생성)

– GITLAB_ROOT_PASSWORD=****
– GITLAB_ROOT_EMAIL=*****

– GITLAB_EMAIL=***
– GITLAB_EMAIL_REPLY_TO=***
– GITLAB_INCOMING_EMAIL_ADDRESS=***

# 회원가입 비밀번호 찾기 발송 리뷰등 이메일 사용시 전송등록
– SMTP_ENABLED=true
– SMTP_DOMAIN=domainname
– SMTP_HOST=smtp.gmail.com
– SMTP_PORT=587
– SMTP_USER=****
– SMTP_PASS=****
– SMTP_STARTTLS=true
– SMTP_AUTHENTICATION=login

– IMAP_ENABLED=true
– IMAP_HOST=imap.gmail.com
– IMAP_PORT=993
– IMAP_USER=****
– IMAP_PASS=****
– IMAP_SSL=true
– IMAP_STARTTLS=false

도커 실행전 letsencrypt를 이용하여 인증서를 먼저 생성한다.
gitlab의 웹서버는 nginx이며 파일 웹루트의 경로는 /home/git/gitlab/public이다
웹루트를 이용하여 letsencrypt를 생성하려면 volume을 추가 연결한다. 다.
단, volume연결시 웹파일이 생성되지 않기 때문에 미리 웹파일을 백업해서 생성해 놓아야한다.

참조

sameersbn/docker-gitlab

docker-compose지원 및 상세 설정 가이드

pwgen사용방법 및 옵션 설명

랜덤 패스워드 생성기 docker-compose.yml 설정시 64자리 패스워드 필요.

cannot open git-upload-pack

이클립스 eGit remote push 중 오류발생 해결 :  egit key, value 옵션 설정

git ignore 설정

.gitignore 파일을 통해서 설정됨. 이클립스이용 또는 직접파일 생성.

이클립스 egit 사용방법

참고로 remote연결시 별도의 브런치를 생성해서 master에서는 소스를 내려받기를 하고 별도 브런치에 소스를 push하고 자동으로 빌드 테스트 후 master에 머지하는 방법을 사용하면 잘못된 소스가 반영되어 전체 개발자의 빌드가 오류나는 상황을 미연에 방지할 수 있다.

git 프로젝트 디렉토리는 워크스페이스로 지정한다.

 

 

 

 

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.