GitHub Actions Runnerとは?仕組みと使い方をやさしく解説

  • 2025年10月2日
  • 2025年10月2日
  • 未分類

最近の開発現場では、コードをGitHubにpushすると自動でテストやデプロイが走る「CI/CD」が当たり前になってきました。その中心にあるのがGitHub Actionsです。リポジトリの.github/workflows/フォルダにYAMLファイルを置くだけで、ビルド・テスト・デプロイの自動化が可能になります。

しかし、実際にその処理を「どこで」動かしているのか、考えたことはあるでしょうか?その答えが、GitHub Actions Runner(以下Runner)です。

GitHub Actions Runnerとは?

Runnerは、GitHub Actionsのジョブを実際に実行する「マシン」のことを指します。
「GitHubが裏で自動的に動かしてくれている」ように見えますが、実はRunner上でワークフローが走っています。

Runnerには大きく分けて2種類あります。

  • GitHubホストランナー(Hosted Runner)
    GitHubが用意してくれるランナー。Linux、Windows、macOSの環境を選んで利用できます。
    特に設定不要で、YAMLに書くだけですぐ使えるのが利点です。
  • セルフホストランナー(Self-hosted Runner)
    自分たちで用意したサーバやVMにRunnerをインストールして使う方法。
    プライベート環境にアクセスが必要な場合や、独自のスペック・環境で実行したいときに便利です。

どうやって使うのか?

GitHub Actionsを動かす基本の流れは以下の通りです。

  1. YAMLファイルを用意
    .github/workflows/ci.yml のように配置。
  2. イベントを定義
    例えば「pushされたとき」「PRが作られたとき」などをトリガーにする。
  3. ジョブを記述
    runs-on でRunnerの種類を指定。 name: CI on: [push, pull_request] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: echo "Hello GitHub Actions" この例では、ubuntu-latest というGitHubが提供するRunner上でジョブが実行されます。

Hosted Runnerの特徴

GitHubが提供するランナーは無料枠があり、OSも選択可能です。
例えば runs-on: ubuntu-latestruns-on: windows-latest と書けば、その環境でジョブが動きます。

メリットは次の通りです。

  • セットアップ不要で即利用可能
  • GitHub側がメンテナンスしてくれる
  • OSSプロジェクトでは無料枠が広い

一方で、プライベートネットワークへのアクセスが必要な場合や、マシンスペックをカスタマイズしたい場合は不向きです。

Self-hosted Runnerの特徴

そこで登場するのがセルフホストランナーです。
自分で用意したサーバ(オンプレでもAWS EC2でも可)にRunnerをインストールして、GitHubリポジトリに登録します。

こうすることで、

  • 社内ネットワーク内のDBやシステムに接続できる
  • 高スペックのマシンやGPUを利用できる
  • 実行環境を自由にカスタマイズできる

といった柔軟な運用が可能になります。

セットアップはGitHubのリポジトリ設定画面から「Actions → Runners → New self-hosted runner」を選び、インストールスクリプトを叩くだけです。

まとめ

  • Runnerとは:「GitHub Actionsの処理を実際に動かすマシン」のこと。
  • Hosted Runner:GitHubが提供する実行環境。設定不要で便利。
  • Self-hosted Runner:自分で用意したサーバ上で動かす方法。プライベート環境や高性能リソースが必要なときに使う。

普段なんとなく使っているGitHub Actionsも、裏側ではRunnerという仕組みが動いています。開発の規模や要件に応じてHostedとSelf-hostedを使い分けることで、より効率的にCI/CDを運用できるでしょう。

最新情報をチェックしよう!