gitlab-ee
사설 인증서를 이용하여 SSL을 적용하였습니다.
환경
OS | CentOS 7 |
---|---|
Docker version | Docker version 1.13.1, build 64e9980/1.13.1 |
환경 변수 설정
설치 전에 환경 변수를 설정해줍니다.
export GITLAB_HOME=/srv/gitlab
GitLab container는 다음과 같이 호스트로 마운트 된 볼륨에 데이터를 영구적으로 저장합니다.
Local location | Container location | Usage |
---|---|---|
|
| application data를 저장 |
|
| log를 저장 |
|
| GitLab configuration 파일을 저장 |
인증서 복사
mkdir -p $GITLAB_HOME/config/ssl cp gitlab.centos.com.* $GITLAB_HOME/config/ssl/
설치
sudo docker run --detach \ --hostname gitlab.centos.com \ --publish 443:443 --publish 80:80 --publish 22:22 --public 5050:5050 \ --name gitlab \ --restart always \ --privileged \ --volume $GITLAB_HOME/config:/etc/gitlab \ --volume $GITLAB_HOME/logs:/var/log/gitlab \ --volume $GITLAB_HOME/data:/var/opt/gitlab \ --env GITLAB_OMNIBUS_CONFIG="external_url 'https://gitlab.centos.com'; letsencrypt['enable'] = false; registry_external_url 'https://gitlab.centos.com:5050';" \ gitlab/gitlab-ee:latest
--privileged
: 해당 권한을 추가하지 않으면--volume
옵션에 명시된 디렉토리와 관련하여 권한 오류가 발생할 수 있습니다.
gitlab-runner
환경 변수 설정
export GITLAB_RUNNER_HOME=/srv/gitlab-runner
인증서 복사
mkdir -p $GITLAB_RUNNER_HOME/config/certs cp gitlab.example.com.crt $GITLAB_RUNNER_HOME/config/certs
Container 생성
docker run -d --name gitlab-runner --restart always \ --privileged \ -v /etc/hosts:/etc/hosts \ -v /var/run/docker.sock:/var/run/docker.sock \ -v $GITLAB_RUNNER_HOME/config:/etc/gitlab-runner \ gitlab/gitlab-runner:latest
0 Comments