Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

GitLab 페이지 웹 사이트 만들기

CI/CD 템플릿을 사용하여 페이지 웹 사이트 만들기

...

  1. 왼쪽 사이드바 > Project overview 클릭

  2. Set up CI/CD 클릭


    이 버튼이 없는 경우, CI/CD가 프로젝트에 대해 이미 구성되어 있는 것이다. 리포지토리에서 .gitlab-ci.yml 파일을 찾아 수정한다.

  3. Apply a template 목록에서 사용 중인 SSG에 대한 템플릿을 선택. 평범한 HTML 선택 가능

    Image RemovedImage Added


    사용중인 템플릿을 찾을 수 없으면 GitLab Pages 그룹 샘플 프로젝트를 볼 수 있다. 이러한 프로젝트에는 필요에 따라 수정할 수 있는 .gitlab-ci.yml 파일이 포함되어 있다. 또한 GitLab 페이지용 .gitlab-ci.yml 파일을 직접 작성하는 방법도 배울 수 있다.

  4. .gitlab-ci.yml 파일을 저장하고 커밋

...

리포지토리에 푸시되는 모든 변경에 대해 GitLab CI/CD는 변경사항을 페이지 사이트에 즉시 게시하는 새 파이프라인을 실행한다.

몇 가지 추가 단계를 수행할 수 있다.

  • 포크 관계를 제거하라. 당신이 포크했던 프로젝트에 기여하고 싶다면, 이 관계를 유지할 수 있다. 그렇지 않으면 프로젝트의 Settings > General로 이동하고 Advanced settings를 확장한 다음 아래로 스크롤하여 Remove fork relationship 선택한다.

...

네임스페이스와 일치하도록 URL을 변경하라. 페이지 사이트가 GitLab.com에서 호스트되는 경우, 이 사이트의 이름을 <namespace>.gitlab.io로 바꿀 수 있으며, 여기서 <namespace>는 프로젝트를 포크할 때 선택한 네임스페이스이다.

...

추가 단계 수행:

  • 포크 관계 제거

    Settings > General > Advanced settings > Remove fork relationship 클릭

...

  • 네임스페이스와 일치하도록 URL 변경
    Settings > General > Advanced settings > Change path > <namespace>.gitlab.io로

    변경한다.
    예를 들어, 프로젝트의 URL이 gitlab.com/gitlab-tests/jekyll 이고 네임스페이스는 gitlab-tests일 경우, 리포지토리 경로를 gitlab-tests.gitlab.io으로 설정하면 페이지 웹 사이트의 URL은 https://gitlab-tests.gitlab.io로 나타난다.
    Image Removed

    이제

    변경
    SSG의 구성 파일로 이동하여 기본 URL을 "프로젝트 이름"에서 ""로

    변경한다

    변경. 프로젝트 이름 설정은 SSG에 따라 다르며 구성 파일에 없을 수 있다.

    Image Added

GitLab 페이지 웹 사이트 업데이트

GitLab 페이지 도메인 이름, URL 및 baseurl

GitLab 페이지 기본 도메인 이름

GitLab.com에 페이지 프로젝트를 설정하면 namespace.example.io의 하위 도메인에서 자동으로 접속할 수 있다. 네임스페이스는 GitLab.com의 사용자 이름 또는 이 프로젝트를 만든 그룹 이름으로 정의된다. GitLab 자체 관리 인스턴스의 경우 example.io을 인스턴스의 페이지 도메인으로 변경해야 한다. GitLab.com의 경우 페이지 도메인은 *.gitlab.io이다.

GitLab 페이지 유형

GitLab에서 생성된 프로젝트 이름

웹 사이트 URL

사용자 페이지

username.example.io

http(s)://username.example.io

그룹 페이지

groupname.example.io

http(s)://groupname.example.io

사용자가 소유한 프로젝트 페이지

projectname

http(s)://username.example.io/projectname

그룹이 소유한 프로젝트 페이지

projectname

http(s)://groupname.example.io/projectname

하위그룹이 소유한 프로젝트 페이지

subgroup/projectname

http(s)://groupname.example.io/subgroup/projectname

Note

GitLab에는 일반 도메인 이름 및 HTTPS로 제공되는 네임스페이스와 관련하여 제한 사항있다. 해당 섹션을 참조하여 작업 진행 하여야 한다.

프로젝트 웹 사이트 예제

  • 사용자 john이 blog라는 프로젝트를 만들었을 경우 - URL : https://gitlab.com/john/blog/

  • websites라고 하는 모든 웹 사이트에 대한 그룹을 만들었고, 이 그룹 내의 프로젝트를 blog라고 부른다 - URL : https://gitlab.com/websites/blog/

  • 엔지니어링 부서에 대한 engineering 그룹을 만들고 docs라는 모든 문서 웹 사이트에 대한 하위 그룹을 만들었으며, 이 하위 그룹 내의 프로젝트를 workflows라고 부른다. - URL : https://gitlab.com/engineering/docs/workflows/