最終更新日: 2026年2月26日
テンプレート説明
GitLab Runner(Latest)は、GitLab CI/CDパイプラインのジョブをサーバー上で実行し、結果をGitLabインスタンスへ送信するオープンソースのCI/CDエージェントです。コードのテスト・ビルド・デプロイといった自動化タスクを、セルフホスト環境で柔軟に実行できます。
本テンプレートはGitLab側でRunner登録トークンを発行し、管理スクリプトでRunnerを登録してからサービスを起動する手順が必要です。
スタートアップスクリプトのテンプレートを利用してサーバー作成を行う手順はご利用ガイドを参照してください。
メモ
GitLab Runnerは、GitLab.comのホステッドRunnerとは異なり、自分自身のインフラでCI/CDジョブを実行するセルフマネージドRunnerです。GitLabのメジャー・マイナーバージョンとRunnerのバージョンを合わせることが推奨されます。GitLab.comに接続して利用する場合は常に最新バージョンへの更新が推奨されます。
仕様
対応OSイメージ
Ubuntu 24.04 LTS
主要ソフトウェア
| ソフトウェア名 | バージョン | ライセンス | 用途 |
|---|---|---|---|
| GitLab Runner | Latest | MIT License | CI/CDジョブの実行エージェント |
| Docker Engine | Latest | Apache 2.0 | Dockerエグゼキューターによるコンテナベースのジョブ実行環境 |
スタートアップスクリプト情報
| 項目 | 説明 |
|---|---|
| アプリケーション利用ポート | アウトバウンド通信のみ(インバウンドポート開放不要) |
| インストールディレクトリ | /etc/gitlab-runner/ |
| 設定ファイル | /etc/gitlab-runner/config.toml |
| 管理スクリプト | /root/gitlab-runner-manage.sh |
| 診断スクリプト | /root/gitlab-runner-diagnose.sh |
| セットアップログ | /var/log/gitlab-runner-setup.log |
| 初期状態 | サービス停止中(セキュリティのため) |
| 実行ユーザー | gitlab-runner(非rootの専用ユーザー、systemd管理) |
その他
最小システム要件
- CPU: 1 vCPU以上(実行するジョブの内容に応じて増強推奨)
- メモリ: 最小1GB以上(ジョブの内容に応じて増強推奨)
- ディスク容量: 20GB以上(ジョブの成果物・キャッシュの量に応じて増強推奨)
- ネットワーク: GitLabインスタンスへのアウトバウンド接続(HTTPSポート443)
メモ
GitLab RunnerはWebサーバーではなく、GitLabインスタンスに対してアウトバウンド接続を行うエージェントです。Webアプリケーションと異なり、インバウンドのHTTP/HTTPSポートを開放する必要はありません。必要なインバウンドポートはSSH(22番)のみです。
利用手順
重要
セキュリティ上の理由により、テンプレート作成直後はGitLab Runnerサービスが停止状態です。GitLab側でRunner登録トークンを発行し、以下の手順に従ってRunnerを登録してからサービスを起動してください。
Step 1: VPSへの接続
SSHでサーバーに接続します。
# ssh root@<IPアドレス>
Step 2: セットアップ完了の確認
インストール情報ファイルを確認し、セットアップが正常に完了していることを確認します。
# cat /root/gitlab-runner-info.txt
インストールログの確認:
# cat /var/log/gitlab-runner-setup.log
Step 3: GitLab側でRunnerの登録トークンを取得
GitLabの管理画面にアクセスし、Runnerの登録トークンを取得します。取得場所はGitLabのバージョンや用途(インスタンス全体・グループ・プロジェクト)によって異なります。
- インスタンス全体のRunner(管理者向け): 管理者エリア > CI/CD > Runners
- グループRunner: グループ > 設定 > CI/CD > Runners
- プロジェクトRunner: プロジェクト > 設定 > CI/CD > Runners
メモ
GitLab 16.0以降では、従来のregistration tokenに代わりauthentication tokenを使用した新しい登録方式が導入されています。GitLabのバージョンに応じた登録手順を公式ドキュメントで確認してください。
Step 4: Runnerの登録(対話式)
管理スクリプトを使って対話式でRunnerを登録します。
# /root/gitlab-runner-manage.sh configure
実行後、以下の項目を順に入力します:
- GitLabインスタンスのURL(例:
https://gitlab.com/または自社GitLabのURL) - 登録トークン(GitLab管理画面で取得したもの)
- Runnerの説明(任意)
- タグ(任意、Enterで省略可)
- エグゼキュータータイプ(不明な場合は
shellを選択)
登録が完了するとRunnerが自動的に起動します。
メモ
エグゼキューターはRunnerがジョブを実行する環境を決定します。shellはシンプルで最も扱いやすく、ジョブはサーバー上の gitlab-runner ユーザー権限で直接実行されます。Dockerコンテナ内でジョブを実行したい場合は docker エグゼキューターを選択してください(Dockerのインストールが必要です)。
Step 5: サービスの状態確認
Runnerが正常に登録・起動されていることを確認します。
# /root/gitlab-runner-manage.sh status
登録済みRunnerの一覧確認:
# gitlab-runner list
Step 6: セキュリティグループの設定
GitLab RunnerはアウトバウンドHTTPS通信でGitLabに接続するため、Webポートの開放は不要です。ConoHaコントロールパネルのセキュリティグループで以下のみ設定してください。
| ポート番号 | プロトコル | 用途 | 必須/オプション |
|---|---|---|---|
| 22 | TCP | SSH(管理用) | 必須 |
Step 7: 診断(トラブルシューティング)
問題が発生した場合は診断スクリプトを実行してください。
# /root/gitlab-runner-diagnose.sh
管理スクリプト一覧
| スクリプト名 / コマンド | 機能 | 使用例 |
|---|---|---|
| gitlab-runner-manage.sh start | サービス起動(自動起動有効化) | # /root/gitlab-runner-manage.sh start |
| gitlab-runner-manage.sh stop | サービス停止(自動起動無効化) | # /root/gitlab-runner-manage.sh stop |
| gitlab-runner-manage.sh restart | サービス再起動 | # /root/gitlab-runner-manage.sh restart |
| gitlab-runner-manage.sh status | サービス状態・バージョン確認 | # /root/gitlab-runner-manage.sh status |
| gitlab-runner-manage.sh logs | 直近200行のサービスログ表示 | # /root/gitlab-runner-manage.sh logs |
| gitlab-runner-manage.sh configure | Runner登録(対話式)、登録後にサービス起動 | # /root/gitlab-runner-manage.sh configure |
| gitlab-runner-manage.sh reconfigure | Runner再登録(既存設定を削除して再度対話式登録) | # /root/gitlab-runner-manage.sh reconfigure |
| gitlab-runner-manage.sh remove | Runnerの登録解除とローカル設定削除(パッケージは残存) | # /root/gitlab-runner-manage.sh remove [–token <Runner Token>] |
| gitlab-runner-diagnose.sh | 環境診断(バージョン・サービス状態・設定・リソース確認) | # /root/gitlab-runner-diagnose.sh |
メモ
remove コマンドはGitLab側のRunner登録解除とサーバー上の設定ファイル(/etc/gitlab-runner/config.toml)を削除しますが、gitlab-runner パッケージ自体はアンインストールされません。reconfigure 実行時は既存の設定ファイルが自動的にバックアップされます(.bak.YYYYMMDD-HHMMSS 形式)。
アプリケーションの具体的な利用方法につきましては、サービス開発元やサービス提供元の公式サイト、Wikiなどで最新情報をご確認ください。
外部リンク
| サイト名 | URL | 説明 |
|---|---|---|
| GitLab Runner公式ドキュメント | https://docs.gitlab.com/runner/ | インストール・設定・エグゼキューターの詳細ドキュメント |
| GitLab Runner インストール(Linux APT) | https://docs.gitlab.com/runner/install/linux-repository/ | APTリポジトリを使用したインストール手順 |
| GitLab Runner エグゼキューター選択ガイド | https://docs.gitlab.com/runner/executors/#selecting-the-executor | エグゼキューターの種類と選択基準 |
| GitLab Runner GitLabリポジトリ | https://gitlab.com/gitlab-org/gitlab-runner | ソースコード・イシュートラッカー・CHANGELOG |
| GitLab CI/CD 概要 | https://docs.gitlab.com/ci/ | GitLab CI/CDの概要・パイプライン設定方法 |