Gitlab CI 를 이용하기 위해서는 gitlab-runner를 설치해줘야 합니다.
리눅스 종류가 다양하지만, 여기서는 Amazon Linux 2 (Centos) 에 대한 설치를 진행해보도록 하겠습니다.
AWS Linux 2에 Gitlab-runner 설치하기
1. AWS 서버에 접속합니다.
2. 다음 명령어를 이용해서 패키지 매니저(yum)에 Gitlab 저장소 위치를 저장시킵니다.
curl -L "https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh" | sudo bash
3. yum 을 이용해서 gitlab-runner를 설치합니다.
sudo yum install gitlab-runner
* 설치하겠냐고 물어볼텐데, y를 누르시면 됩니다.
4. gitlab-runner 설치가 되었다면, /usr/bin에 gitlab-runner 가 생성되었을 겁니다.
* 참고 - Gitlab docs : Gitlab Runner install
Runner 등록하기
Gitlab에서 제공하는 Runner는 세 가지 종류가 있습니다.
- Shared Runner : 누구나 사용할 수 있는 Runner
- Group Runner : 그룹 내에서만 사용할 수 있는 Runner
- Project Runner : 프로젝트 내에서만 사용할 수 있는 Runner
여기서는 Project Runner를 등록해보도록 하겠습니다.
1. 프로젝트 Settings > CI/CD 페이지로 들어오셔서, Runners 항목을 펼쳐줍니다.
Project runners, Shared runners 가 보이고, 오른쪽 하단에는 Group runners 섹션이 보이실 겁니다.
Project runners 섹션을 보시면, registration token이 있습니다.
이것을 잘 기억해두세요.
2. Show runner installation instructions 버튼 클릭
Show runner installation instructions 버튼을 클릭해보세요.
그럼, Gitlab-runner 설치와 Runner 등록 방법이 나오는데요.
이미 Gitlab-runner 설치를 했기 때문에 curl 명령어를 실행하실 필요는 없습니다.
저희는 yum을 이용해서 설치했기 때문에 /usr/bin에 gitlab-runner가 설치가 된 상태입니다.
설치 외에 저 메뉴얼대로 Runner를 등록해보겠습니다.
3. 실행할 수 있는 권한을 gitlab-runner에 부여합니다.
sudo chmod +x /usr/bin/gitlab-runner
4. gitlab-runner 계정을 추가해줍니다.
sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash
5. gitlab-runner 서비스를 설치해줍니다.
sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
--user : 사용자 계정
--working-directory : git clone할 디렉토리 위치
* 참고 : gitlab-runner install 명령어에 넘겨줄 옵션
저는 메뉴얼에 소개된 명령어와 다르게, 사용자 계정을 root로 디렉토리 위치도 다른 곳으로 변경해서 적용해보겠습니다.
sudo gitlab-runner install --user=root --working-directory=/home/ec2-user
install 명령어 후에는 gitlab-runner 서비스를 실행시켜야 합니다.
sudo gitlab-runner start
그러면, gitlab-runner 서비스가 등록이 되었습니다.
gitlab-runner list
명령어를 입력하면 아직 등록된 Runner는 안 보입니다.
6. Runner를 등록해줍니다.
sudo gitlab-runner register
명령어를 실행하면, 차례대로 token, description, tags, note, executor 를 입력해주어야 합니다.
registration token은 아까 기억해둔 token값을 넣어주시고,
description은 Runner를 설명할 문구, tag는 .yml 파일에서 tag 옵션에 사용할 문구입니다.
executor는 어떤 환경에서 Runner를 실행할 것인지를 의미합니다. 저는 shell에서 사용할 것이기에 shell을 입력해주었습니다.
Runner가 잘 등록되었다면, gitlab-runner list
명령어 후 목록에 나타날 것입니다.
Gitlab CI/CD 설정 페이지에서도 Runner가 보입니다.
만약, Runner가 정상적이지 않다면 빨간 동그라미 또는 느낌표 등의 아이콘이 보일 겁니다.
그럴 경우에는 gitlab-runner verify
를 통해서 아직 제대로 활성화되지 않은 Runner를 활성화시킬 수도 있습니다.
이것으로 gitlab-runner 설치 & Runner 등록 (Project Runner) 을 마치도록 하겠습니다.
'Web' 카테고리의 다른 글
[Web] Discord 채팅채널에 Github Action을 이용해서 Vercel 배포 알림 보내기 (Vercel Hobby Plan) (0) | 2024.05.08 |
---|---|
[Web] Storybook를 시작해보자 (with Typescript, Next.js) (0) | 2023.07.07 |
[Web] Git 원격저장소의 브랜치 추적하기 (0) | 2023.05.24 |
[Web] Gitlab-runner 명령어 몇 가지 정리해보기 (0) | 2023.04.29 |
[Web] 스타일 컴포넌트를 어떻게 잘 관리할 수 있을까? (feat. Emotion.js) (0) | 2023.03.18 |