AWS Gitlab Omnibus 설치-사설 인증서 이용

OS 환경 : CentOS7

 

Gitlab 설치

참조 URL : https://docs.gitlab.com/ee/topics/airgap/quick_start_guide.html

AWS 도메인은 CA 정책으로 공인 인증서 발급이 제한 됩니다. 사설 인증서 이용한 설치 진행 하였습니다.

CentOS 7에 GitLab 설치 가이드에 따라 설치 합니다. EXTERNAL_URL 설치 단계에 http URL을 지정합니다. 설치되면 SSL을 직접 구성합니다.

sudo EXTERNAL_URL="http://ec2-3-34-48-235.ap-northeast-2.compute.amazonaws.com" install gitlab-ee

Docker 설치

yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum install docker-ce systemctl start docker && systemctl enable docker

SSL 활성화

  1. /etc/gitlab/gitlab.rb 파일 수정

    # external_url의 "http"를 "https"로 수정 external_url "https://ec2-3-34-48-235.ap-northeast-2.compute.amazonaws.com" # Let's Encrypt를 false로 수정 letsencrypt['enable'] = false
  2. 사설 인증서 생성

  3. 변경 사항 적용

GitLab Container Registry 활성화

  1. /etc/gitlab/gitlab.rb 파일 수정

  2. 변경 사항 적용

GitLab Runner 설치

  1. 패키지 다운로드

  2. 시스템 패키지 설치

Docker 데몬이 Registry와 GitLab Runner를 신뢰하도록 사설 인증서 매칭

  1. Docker 데몬에 제공할 인증서 복사

  2. GitLab Runner에 제공할 인증서 복사

GitLab Runner 활성화

  1. GitLab Runner를 Docker 서비스로 설치

  2. /etc/gitlab-runner/config.toml 파일 수정

  3. Runner 실행

호스트 OS에 대한 레지스트리 인증

Docker의 레지스트리 인증 설명서에 명시된 바와 같이 특정 버전의 Docker는 OS 레벨에서 인증서 체인을 신뢰해야합니다. 아래와 같이 설정해 줍니다.