GNU/Linux에서 GitLab Runner 수동 설치
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
deb 또는 rpm 패키지나 바이너리 파일을 사용하여 GitLab Runner를 수동으로 설치할 수 있습니다. GitLab Runner를 수동으로 실행하기 전에: deb 또는 rpm 패키지를 사용하여 GitLab Runner를 다운로드하고 설치할 수 있습니다.
deb 또는 rpm 패키지나 바이너리 파일을 사용하여 GitLab Runner를 수동으로 설치할 수 있습니다.
다음의 경우 최후의 수단으로 이 방법을 사용하세요:
- deb/rpm 리포지터리를 사용하여 GitLab Runner를 설치할 수 없는 경우
- GNU/Linux OS가 지원되지 않는 경우
사전 요구 사항#
GitLab Runner를 수동으로 실행하기 전에:
- Docker executor를 사용할 계획이라면 먼저 Docker를 설치하세요.
- 일반적인 문제와 해결책에 대한 FAQ 섹션을 검토하세요.
deb/rpm 패키지 사용#
deb 또는 rpm 패키지를 사용하여 GitLab Runner를 다운로드하고 설치할 수 있습니다.
다운로드#
시스템에 맞는 패키지를 다운로드하려면:
- https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/index.html에서 최신 파일 이름과 옵션을 확인하세요.
- 패키지 관리자 또는 아키텍처에 맞는 runner-helper 버전을 다운로드하세요.
- 버전을 선택하고 바이너리를 다운로드하세요. 방법은 bleeding edge GitLab Runner 릴리스의 다른 태그된 릴리스 다운로드 문서에 설명되어 있습니다.
예를 들어, Debian 또는 Ubuntu의 경우:
# ${arch}를 지원되는 아키텍처로 교체하세요. 예: x86_64, aarch64, armhfp
# 전체 아키텍처 목록은 https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/index.html 에서 확인할 수 있습니다
curl -LJO "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/deb/gitlab-runner-helper-images.deb"
curl -LJO "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/deb/gitlab-runner_${arch}.deb"
예를 들어, CentOS 또는 Red Hat Enterprise Linux의 경우:
# ${arch}를 지원되는 아키텍처로 교체하세요. 예: x86_64, aarch64, armhfp
# 전체 아키텍처 목록은 https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/index.html 에서 확인할 수 있습니다
curl -LJO "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/rpm/gitlab-runner-helper-images.rpm"
curl -LJO "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/rpm/gitlab-runner_${arch}.rpm"
예를 들어, RHEL에서 FIPS 준수 GitLab Runner의 경우:
# 현재 x86_64만 지원되는 아키텍처입니다
# FIPS 준수 GitLab Runner 버전은 하나의 패키지에 헬퍼 이미지를 계속 포함합니다.
# 전체 아키텍처 목록은 https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/index.html 에서 확인할 수 있습니다
curl -LJO "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/rpm/gitlab-runner_x86_64-fips.rpm"
설치#
-
시스템에 맞는 패키지를 다음과 같이 설치하세요.
예를 들어, Debian 또는 Ubuntu의 경우:
dpkg -i gitlab-runner-helper-images.deb gitlab-runner_<arch>.deb예를 들어, CentOS 또는 Red Hat Enterprise Linux의 경우:
dnf install -y gitlab-runner-helper-images.rpm gitlab-runner_<arch>.rpm
업그레이드#
시스템에 맞는 최신 패키지를 다운로드한 후 다음과 같이 업그레이드하세요:
예를 들어, Debian 또는 Ubuntu의 경우:
dpkg -i gitlab-runner_<arch>.deb
예를 들어, CentOS 또는 Red Hat Enterprise Linux의 경우:
dnf install -y gitlab-runner-helper-images.rpm gitlab-runner_<arch>.rpm
바이너리 파일 사용#
바이너리 파일을 사용하여 GitLab Runner를 다운로드하고 설치할 수 있습니다.
설치#
-
시스템에 맞는 바이너리 중 하나를 다운로드하세요:
# Linux x86-64 sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-amd64" # Linux x86 sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-386" # Linux arm sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-arm" # Linux arm64 sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-arm64" # Linux s390x sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-s390x" # Linux ppc64le sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-ppc64le" # Linux riscv64 sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-riscv64" # Linux loong64 sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-loong64" # Linux x86-64 FIPS 준수 sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-amd64-fips"Bleeding Edge - 다른 태그된 릴리스 다운로드에 설명된 대로 사용 가능한 모든 버전의 바이너리를 다운로드할 수 있습니다.
-
실행 권한을 부여하세요:
sudo chmod +x /usr/local/bin/gitlab-runner -
GitLab CI 사용자를 생성하세요:
sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash -
서비스로 설치하고 실행하세요:
sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner sudo gitlab-runner start루트에 대해
$PATH에/usr/local/bin/이 있는지 확인하세요. 없으면command not found오류가 발생할 수 있습니다. 또는/usr/bin/과 같은 다른 위치에gitlab-runner를 설치할 수도 있습니다.
gitlab-runner가 서비스로 설치되어 실행되는 경우 루트로 실행되지만,
install 명령에 지정된 사용자로 잡을 실행합니다.
이는 캐시 및 아티팩트와 같은 일부 잡 기능이 /usr/local/bin/gitlab-runner 명령을 실행해야 함을 의미합니다.
따라서 잡을 실행하는 사용자는 실행 파일에 대한 접근 권한이 있어야 합니다.
업그레이드#
-
서비스를 중지하세요(이전과 마찬가지로 관리자 권한 명령 프롬프트 필요):
sudo gitlab-runner stop -
GitLab Runner 실행 파일을 교체하기 위한 바이너리를 다운로드하세요. 예:
sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-amd64"Bleeding Edge - 다른 태그된 릴리스 다운로드에 설명된 대로 사용 가능한 모든 버전의 바이너리를 다운로드할 수 있습니다.
-
실행 권한을 부여하세요:
sudo chmod +x /usr/local/bin/gitlab-runner -
서비스를 시작하세요:
sudo gitlab-runner start
다음 단계#
설치 후 설정을 완료하려면 러너를 등록하세요.
러너 바이너리에는 미리 빌드된 헬퍼 이미지가 포함되어 있지 않습니다. 다음 명령을 사용하여 헬퍼 이미지 아카이브의 해당 버전을 다운로드하고 적절한 위치에 복사할 수 있습니다:
mkdir -p /usr/local/bin/out/helper-images
cd /usr/local/bin/out/helper-images
아키텍처에 맞는 헬퍼 이미지를 선택하세요:
Ubuntu 헬퍼 이미지
# Linux x86-64 ubuntu
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-ubuntu-x86_64.tar.xz
# Linux x86-64 ubuntu pwsh
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-ubuntu-x86_64-pwsh.tar.xz
# Linux s390x ubuntu
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-ubuntu-s390x.tar.xz
# Linux ppc64le ubuntu
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-ubuntu-ppc64le.tar.xz
# Linux arm64 ubuntu
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-ubuntu-arm64.tar.xz
# Linux arm ubuntu
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-ubuntu-arm.tar.xz
# Linux x86-64 ubuntu 특정 버전 - v17.10.0
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/v17.10.0/helper-images/prebuilt-ubuntu-x86_64.tar.xz
Alpine 헬퍼 이미지
# Linux x86-64 alpine
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-alpine-x86_64.tar.xz
# Linux x86-64 alpine pwsh
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-alpine-x86_64-pwsh.tar.xz
# Linux s390x alpine
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-alpine-s390x.tar.xz
# Linux riscv64 alpine edge
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-alpine-edge-riscv64.tar.xz
# Linux arm64 alpine
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-alpine-arm64.tar.xz
# Linux arm alpine
wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/helper-images/prebuilt-alpine-arm.tar.xz
