GNU/LinuxにGitLab Runnerを手動でインストールする
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
GitLab Runnerは、debパッケージ、rpmパッケージ、またはバイナリファイルを使用して手動でインストールできます。この方法は、以下の状況で最後の手段として使用してください:
- GitLab Runnerをインストールするためにdeb/rpmリポジトリを使用できない場合
- ご使用の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バージョンをダウンロードします。
- GitLab Runner bleeding edgeリリースのその他のタグ付きリリースのダウンロードに関するドキュメントの説明に従って、バージョンを選択し、バイナリをダウンロードします。
たとえば、DebianまたはUbuntuの場合は次のようになります:
# Replace ${arch} with any of the supported architectures, e.g. amd64, arm, arm64
# A full list of architectures can be found here 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の場合は次のようになります:
# Replace ${arch} with any of the supported architectures, e.g. amd64, arm, arm64
# A full list of architectures can be found here 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の場合は次のようになります:
# Currently only amd64 is a supported arch
# The FIPS compliant GitLab Runner version continues to include the helper images in one package.
# A full list of architectures can be found here 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_amd64-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 x86-64 FIPS Compliant 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-runnerGitLab 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 startrootの
$PATHに/usr/local/bin/があることを確認してください。ない場合は、command not foundエラーが発生する可能性があります。または、gitlab-runnerを/usr/bin/のような別の場所にインストールすることもできます。
gitlab-runnerがインストールされ、サービスとして実行されている場合、これはrootとして実行されますが、ジョブはinstallコマンドで指定されたユーザーとして実行します。つまり、キャッシュやアーティファクトなどの一部のジョブ機能は/usr/local/bin/gitlab-runnerコマンドを実行する必要があります。したがって、ジョブ実行ユーザーが実行可能ファイルにアクセスできる必要があります。
アップグレード
サービスを停止します(以前と同様に、管理者権限でのコマンドプロンプトが必要です):
sudo gitlab-runner stopGitLab 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
次の手順
インストール後、runnerを登録してセットアップを完了します。
Runnerバイナリには、事前ビルド済みのヘルパーイメージが含まれていません。これらのコマンドを使用して、対応するバージョンのヘルパーイメージアーカイブをダウンロードし、適切な場所にコピーできます:
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 specific version - 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.xzalpineヘルパーイメージ
# 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