GitLab에는 무료로 웹 호스팅을 지원한다. 개발 관련 블로그들을 보다보면 한번쯤 github.io로 구성된 블로그를 봤을 것이다. 이것 역시 GitHub에서 지원하는 웹 호스팅을 사용한 것이다.
Pages를 활성화 시키는 건 엄청나게 쉽다.
프로젝트 생성
{UserName}.gitlab.io 형식
이 형식을 안 따라도 괜찮지만, 나중에 블로그 URL이 길어진다. 예를 들어 ExampleProject라고 지었으면 gitlab.io/ExampleProject처럼 한 단계가 더 생긴다. gitlab.io까지만 하는 게 깔끔하므로 형식을 지켜주는 게 좋다.
그룹에 속한 프로젝트처럼 특수한 경우에는 다른 도메인을 쓰므로 주의하자.
https://docs.gitlab.com/ee/user/project/pages/getting_started_part_one.html
파일 추가
index.html
제일 처음에 뜨는 페이지를 하나 만들어주자. 간단한 HTML이라 어렵지 않을 것이다.
<html>
<head>
<title>테스트 페이지</title>
</head>
<body>
<h1>안녕하세요 깃랩 페이지입니다!!</h1>
</body>
</html>
.gitlab-ci.yml
프로젝트의 루트 폴더에 이 파일을 위치시키면, 프로젝트가 푸시될 때마다 자동으로 Runner를 통해 빌드된다. Runner는 또 뭔가 싶겠지만, 기본적으로 깃랩에서 리눅스 기반 서버를 제공해준다.
아래의 예제 코드에서 script: 부분이 명령어로 이루어져있는데, 우리가 cmd로 명령어 치는 거랑 똑같이 넣어주면 동작한다. Default Runner가 리눅스 기반이므로 리눅스 명령어를 써줘야 한다. 윈도우 PowerShell이랑 조금 다를 수 있다.
pages:
stage: deploy
script:
- mkdir .public
- cp -r * .public
- mv .public public
artifacts:
paths:
- public
명령어가 하는 역할을 알면, 이 파일도 되게 쉽게 보인다.
mkdir .public : .public 폴더 생성.
cp -r * .public : 현재 깃 프로젝트에 있는 모든 프로젝트를 .public 폴더에 복사. -r은 recursive의 약자로 재귀적으로 아래 폴더의 아래폴더까지 쭉쭉 복사한다.
mv .public public : .public 폴더명을 public으로 변경.
굳이 .public 폴더를 만들어서 나중에 public으로 변경해주는 이유는 바로 public 폴더에 작업하면 충돌날 수도 있고, 이후에 작업물과 결과물을 깔끔하게 분리하기 위해서라고 한다. .public에서 작업을 하고, 필요한 결과만 public 폴더에 넣으면 깔끔하므로!
Pipeline 탭 확인
GitLab 사이드바에서 Build -> Pipelines에 가보자. 빌드 상황에 대해서 볼 수 있다. 이 게시글에선 복잡한 것을 안해서 아마 성공이 뜰 것이다.
Pages 탭 확인
GitLab 사이드바에서 Deploy -> Pages에 가보자. 기본적으로 Use unique domain 속성이 켜져있는데, 꺼줘야 도메인이 짧아진다.
결과
링크에 들어가면 아까 만들었던 index.html이 보인다. 성공!
혹시나 이전에 만들었던 URL로 계속 Redirect 되는 버그가 생길 수 있다. 시크릿탭에서는 되는 것으로 보아 캐시를 삭제 했는데 잘 작동한다.
참고 사이트
https://docs.gitlab.com/ee/user/project/pages/
'기타 > Git' 카테고리의 다른 글
바로 이전 커밋 메세지 교체하기 (0) | 2022.02.17 |
---|