GitLab Pages Let's Encrypt 인증서
Offering: GitLab.com, GitLab Self-Managed
Let's Encrypt(LE)와 GitLab Pages 통합을 통해 사용자 정의 도메인이 있는 Pages 웹사이트에서 LE 인증서를 사용하면서 직접 발급하고 업데이트하는 번거로움 없이 사용할 수 있습니다; GitLab이 기본으로 제공합니다.
Let's Encrypt(LE)와 GitLab Pages 통합을 통해 사용자 정의 도메인이 있는 Pages 웹사이트에서 LE 인증서를 사용하면서 직접 발급하고 업데이트하는 번거로움 없이 사용할 수 있습니다; GitLab이 기본으로 제공합니다.
Let's Encrypt는 무료, 자동화된 오픈 소스 인증 기관입니다.
이 기능은 사용자 정의 도메인에 대한 인증서만 적용하며, Pages 데몬 실행에 필요한 와일드카드 인증서는 적용되지 않습니다(GitLab Self-Managed, Free, Premium 및 Ultimate 전용). 와일드카드 인증서 생성은 이 이슈에서 추적됩니다.
전제 조건#
도메인에 대한 SSL 인증서 자동 프로비저닝을 활성화하기 전에 다음이 있는지 확인하세요:
- 웹사이트 소스 코드가 포함된 GitLab 프로젝트를 생성했습니다.
- 도메인(
example.com)을 취득하고 Pages 웹사이트를 가리키는 DNS 항목을 추가했습니다. 최상위 도메인(.com)은 공개 접미사여야 합니다. - Pages 프로젝트에 도메인을 추가하고 소유권을 확인했습니다.
- 웹사이트가 실행 중이고 사용자 정의 도메인을 통해 접근 가능한지 확인했습니다.
Let's Encrypt와 GitLab 통합은 GitLab.com에서 활성화되어 있습니다. GitLab Self-Managed 인스턴스의 경우 관리자가 활성화했는지 확인하세요.
사용자 정의 도메인에 대한 Let's Encrypt 통합 활성화#
요구 사항을 충족한 후 Let's Encrypt 통합을 활성화합니다:
-
상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
-
왼쪽 사이드바에서 Deploy > Pages를 선택합니다.
-
도메인 이름 옆에서 Edit (✏️)을 선택합니다.
-
Automatic certificate management using Let's Encrypt 토글을 켭니다.

-
Save changes를 선택합니다.
활성화되면 GitLab이 LE 인증서를 얻고 연결된 Pages 도메인에 추가합니다. GitLab은 또한 자동으로 갱신합니다.
인증서를 발급하고 Pages 구성을 업데이트하는 데 최대 한 시간이 걸릴 수 있습니다. 도메인 설정에 이미 SSL 인증서가 있는 경우 Let's Encrypt 인증서로 교체될 때까지 계속 작동합니다.
문제 해결#
Let's Encrypt 인증서를 얻는 동안 문제가 발생했습니다#
Something went wrong while obtaining the Let's Encrypt certificate 오류가 표시될 수 있습니다.
이 문제는 Let's Encrypt가 도메인에 도달하거나 검증할 수 없을 때 발생합니다.
이 문제를 해결하려면:
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 Settings > General을 선택합니다.
- Visibility, project features, permissions를 펼칩니다.
- Pages 아래에서 드롭다운 목록에서 Everyone With Access를 선택합니다.
- Deploy > Pages > Domains & settings를 선택합니다.
- 도메인 이름 옆에서 Edit (✏️)을 선택합니다.
- Verification status에서 Retry verification ([retry])을 선택합니다.
동일한 오류가 발생하면 다음을 확인하세요:
- 도메인에 대해 하나의
CNAME또는ADNS 레코드만 설정했는지 확인합니다. - 도메인에
AAAADNS 레코드가 없는지 확인합니다. - 도메인 또는 상위 도메인에 대한
CAADNS 레코드가 있는 경우letsencrypt.org를 포함하는지 확인합니다. - 도메인이 검증되었는지 확인합니다.
- 병렬 배포를 사용하는 경우 기본 배포에 빈
path_prefix가 있는지 확인합니다. 비어 있지 않은path_prefix(예:latest)는/.well-known/acme-challenge경로가 제공되는 것을 방지합니다.
Deploy > Pages 설정으로 돌아가서 검증을 다시 시도합니다.
인증서 취득이 한 시간 이상 걸림#
Let's Encrypt 통합을 활성화했지만 한 시간 후에도 인증서가 없고 다음 메시지가 표시되는 경우:
GitLab is obtaining a Let's Encrypt SSL certificate for this domain.
This process can take some time. Please try again later.
다음 단계에 따라 GitLab Pages 도메인을 제거하고 다시 추가하세요:
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 Deploy > Pages를 선택합니다.
- 도메인 이름 옆에서 Remove를 선택합니다.
- 도메인을 다시 추가하고 검증합니다.
- 도메인에 대한 Let's Encrypt 통합을 활성화합니다.
- 여전히 같은 오류가 발생하는 경우:
- 도메인에 대해 하나의
CNAME또는ADNS 레코드만 올바르게 설정했는지 확인합니다. - 도메인에
AAAADNS 레코드가 없는지 확인합니다. - 도메인 또는 상위 도메인에
CAADNS 레코드가 있는 경우letsencrypt.org를 포함하는지 확인합니다. - 1단계로 이동합니다.
- 도메인에 대해 하나의
