💽 CICD/Git

[Gitlab] Runner 구성하기

heywantodo 2025. 1. 16. 17:08
728x90
반응형

[Gitlab] Runner 구성하기

앞서 gitlab CI/CD의 `.gitlab-ci.yml` 대해 포스팅했었다.

 

[Gitlab] Gitlab CI/CD 파이프라인

[Gitlab] Gitlab CI/CD 파이프라인이전 포스팅에서 github의 Action에 대해서 포스팅 한 적이 있었다. [CI/CD] Git hub Action[Git] Git hub Action 🤔Git Hub Action? Git 리포지토리에서 바로 소프트웨어 개발 워크플로

heywantodo.tistory.com

해당 포스팅에서 CI/CD 파이프라인을 실행하기 위해선  작업을 진행할 Gitlab Runner가 필요하다고 언급을 하였는데,

이번 포스팅에선 Gitlab Runner를 구성하는 방법에 대해 알아보고자 한다.

 

GitLab Runner

Gitlab Runner는 깃랩과 함께 동작하며, Gitlab에서 정의된 CI/CD 작업을 수행한다.

러너는 여러 플랫폼에서 실행할 수 있으며, 다양한 실행환경(ex. Docker, Shell, Kubernetes 등)을 지원한다.

 

Runner의 주요 역할

  • Gitlab에서 정의된 CI/CD 작업 실행
  • Job에 할당된 스크립트 및 명령어 실행
  • 다양한 Executor(Docker, Shell, SSH 등) 지원

 

GitLab Runner 설치하기

앞서 Gitlab Runner는 다양한 플랫폼에서 설치가 가능하다고 언급했는데,

여기서는 Linux 환경에서의 설치를 예로 들겠다.

 

1. 패키지 저장소 추가

curl -L "https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh" \
| sudo bash

 

2. Gitlab Runner 설치

sudo apt install gitlab-runner

 

3. 설치 확인

gitlab-runner --version

 

Gitlab Runner 등록하기

Runner를 Gitlab 프로젝트와 연결하기 위해선 등록 과정이 필요하다.

 

Runner 등록 단계

1. Gitlab 프로젝트에서 ⚙ Settings > CI/CD > Runners로 이동한다.

2. Registration Token을 확인한다.

3. 서버로 돌아와 Runner 등록 명령어를 실행한다.

sudo gitlab-runner register

4. 아래와 같이 입력한다.

  • GitLab URL : GitLab 인스턴스 URL 입력
  • Registration Token : 앞서 확인한 토큰 입력
  • Description : Runner에 대한 설명 입력
  • Tags : Runner에 사용 할 태그 입력
  • Executor : 사용 할 Executor 선택 (ex. Docker)

5. Executor가 Docker인 경우 도커 이미지를 지정한다.

Please enter the default Docker image (e.g. ruby:2.7):
alpine:latest

 

Gitlab Runner 구성 파일 설정

등록이 완료되면 Runner의 설정 파일인 `config.toml`이 생성된다.

이 파일은 Runner의 동작을 제어하는 데 사용된다.

 

config.toml 주요 설정

`/etc/gilab-runner/config.toml` 파일을 열고 필요한 설정을 추가한다.

 

기본 구조

[[runners]]
  # Runner 이름
  name = "My First Runner"
  url = "https://gitlab.com"
  token = "xxxxxxxxxxxx"
  # 실행 환경 (예: docker, shell, kubernetes)
  executor = "docker"
  [runners.docker]
    # 기본 Docker 이미지
    image = "alpine:latest"
    # Docker-in-Docker 작업을 위한 설정
    privileged = true
    volumes = ["/cache"]

 

GitLab CI/CD 파이프라인 실행

러너 등록 및 설정이 완료되었으면, .gitlab-ci.yml 파일을 작성해 CI/CD 파이프라인을 실행할 수 있다.

stages:
  - build
  - test

build_job:
  stage: build
  script:
    - echo "Building the project..."
    - mkdir build
    - touch build/output.txt

test_job:
  stage: test
  script:
    - echo "Running Tests.."
    - cat build/output.txt

설정을 한 Gitlab 프로젝트에 .gitlab-ci.yml 파일을 커밋 후 CI/CD > Pipelines로 이동하면 파이프라인 상태를 확인 가능하다.

 

참고

https://docs.gitlab.com/runner/install/

 

728x90
반응형