リポジトリ、Organization、Enterpriseに自己ホストランナーを追加できます。
Organization または Enterprise 管理者の場合は、Organization または Enterprise レベルで自己ホストランナーを追加することをお勧めします。 このアプローチにより、Organization または Enterprise 内の複数のリポジトリでランナーを使用できるようになり、ランナーを1か所で管理することもできます。
自己ホストランナーでサポートされているオペレーティング システム、またはプロキシ サーバーで自己ホストランナーを使う方法については、「自己ホスト ランナーの概要」を参照してください。
Warning
自己ホストランナーは、プライベートリポジトリでのみ利用することをおすすめします。 これは、ワークフロー内でコードを実行する pull request を作成することで、パブリック リポジトリのフォークによって、自己ホスト ランナー マシン上で危険なコードが実行される可能性があるからです。
詳しくは、「自己ホスト ランナーの概要」をご覧ください。
自己ホスト ランナーの数をスケーリングするように自動化を設定できます。 詳しくは、「セルフホステッド ランナーによる自動スケーリング」をご覧ください。
Just-In-Time ランナーの登録を使って、登録がクリーンアップされる前に 1 つのジョブを実行するエフェメラル ランナーを登録できます。 詳しくは、「GitHub Actions のセキュリティ強化」をご覧ください。
前提条件
- 環境内でセルフホステッド ランナーとして使用するマシンにアクセスできる必要があります。
リポジトリへの自己ホストランナーの追加
単一のリポジトリに自己ホストランナーを追加できます。 自己ホストランナーをユーザのリポジトリに追加するには、リポジトリのオーナーでなければなりません。 組織リポジトリの場合、組織の所有者、リポジトリへの管理者アクセス権の所有、「組織ランナーとランナー グループを管理する」アクセス許可を持っている必要があります。
カスタム organization の役割の詳細については、「カスタム組織の役割の情報」を参照してください。
REST API を使って自己ホストランナーを追加する方法については、「セルフホステッド ランナーの REST API エンドポイント」を参照してください。
Note
Enterprise の所有者と Organization の所有者は、リポジトリ レベルのセルフホステッド ランナーの作成を許可するリポジトリを選択できます。 "Organization ランナーとランナー グループの管理" アクセス許可を持つユーザーは、Organization 内のリポジトリのリポジトリ レベルのセルフホステッド ランナーの作成を許可するリポジトリのみを選択できます。
カスタム Organization の役割の詳細については、「カスタム組織の役割の情報」をご覧ください。
詳細については、「エンタープライズで GitHub Actions のポリシーを適用する」と「Organization について GitHub Actions を無効化または制限する」を参照してください。
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
-
左のサイドバーで [アクション] をクリックしてから、 [ランナー] をクリックします。
-
[新規フホスト ランナー] をクリックします。
-
使用する自己ホスト ランナー マシンのオペレーティング システム イメージとアーキテクチャを選択します。
-
ランナーアプリケーションをダウンロードして、使用する自己ホストランナーのマシンにインストールする方法が表示されます。
自己ホストランナーのマシンでシェルを開き、表示順に従ってシェルコマンドを実行してください。
Note
Windows では、自己ホスト ランナー アプリケーションをサービスとしてインストールする場合は、シェルを管理者特権で開く必要があります。 また、
C:\actions-runner
を自己ホスト ランナー アプリケーション用のディレクトリとして使用し、Windows のシステム アカウントでランナー ディレクトリにアクセスできるようにすることをお勧めします。この指示に従えば、以下のタスクが完了します。
- 自己ホストランナーアプリケーションのダウンロードと展開。
config
スクリプトを実行して自己ホスト ランナー アプリケーションを設定し、GitHub Actions に登録します。config
スクリプトには、登録先の URL と、リクエストを認証してもらうための自動的に生成された時間制限付きのトークンが必要です。 トークンは1時間後に期限切れになります。- Windows では、
config
スクリプトから自己ホスト ランナーをサービスとしてインストールするかどうかも尋ねられます。 LinuxとmacOSでは、ランナーの追加を終えた後にサービスをインストールできます。 詳しくは、「自己ホストランナーアプリケーションをサービスとして設定する」を参照してください。
- Windows では、
- 自己ホストランナーアプリケーションを実行して、マシンをGitHub Actionsに接続します。
自己ホストランナーの追加に成功したことの確認
自己ホスト ランナーを追加する手順を完了すると、ランナーとその状態が の下に表示されます。
ジョブをランナーが受け付けるためには、自己ホストランナーアプリケーションが動作していなければなりません。 ランナー アプリケーションが GitHub Enterprise Cloud に接続されており、ジョブの受信準備ができたら、以下のメッセージがコンピューターのターミナルに表示されます。
√ Connected to GitHub
2019-10-24 05:45:56Z: Listening for Jobs
詳しくは、「自己ホストランナーのモニタリングとトラブルシューティング」をご覧ください。
Organizationへの自己ホストランナーの追加
自己ホストランナーをOrganizationのレベルで追加し、Organization内の複数のリポジトリのジョブを処理するために使うことができます。 セルフ ホスト ランナーを組織に追加するには、組織の所有者であるか、「組織ランナーとランナー グループを管理する」アクセス許可を持っている必要があります。 REST API を使って自己ホストランナーを追加する方法については、「セルフホステッド ランナーの REST API エンドポイント」を参照してください。
カスタム organization の役割の詳細については、「カスタム組織の役割の情報」を参照してください。
-
GitHub で、organization のメイン ページに移動します。
-
組織名の下で、 [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
-
左のサイドバーで [アクション] をクリックしてから、 [ランナー] をクリックします。
-
[新しいランナー] をクリックし、 [新しい自己ホスト ランナー] をクリックします。 1. 使用する自己ホスト ランナー マシンのオペレーティング システム イメージとアーキテクチャを選択します。
-
ランナーアプリケーションをダウンロードして、使用する自己ホストランナーのマシンにインストールする方法が表示されます。
自己ホストランナーのマシンでシェルを開き、表示順に従ってシェルコマンドを実行してください。
Note
Windows では、自己ホスト ランナー アプリケーションをサービスとしてインストールする場合は、シェルを管理者特権で開く必要があります。 また、
C:\actions-runner
を自己ホスト ランナー アプリケーション用のディレクトリとして使用し、Windows のシステム アカウントでランナー ディレクトリにアクセスできるようにすることをお勧めします。この指示に従えば、以下のタスクが完了します。
- 自己ホストランナーアプリケーションのダウンロードと展開。
config
スクリプトを実行して自己ホスト ランナー アプリケーションを設定し、GitHub Actions に登録します。config
スクリプトには、登録先の URL と、リクエストを認証してもらうための自動的に生成された時間制限付きのトークンが必要です。 トークンは1時間後に期限切れになります。- Windows では、
config
スクリプトから自己ホスト ランナーをサービスとしてインストールするかどうかも尋ねられます。 LinuxとmacOSでは、ランナーの追加を終えた後にサービスをインストールできます。 詳しくは、「自己ホストランナーアプリケーションをサービスとして設定する」を参照してください。
- Windows では、
- 自己ホストランナーアプリケーションを実行して、マシンをGitHub Actionsに接続します。
自己ホストランナーの追加に成功したことの確認
自己ホスト ランナーを追加する手順を完了すると、ランナーとその状態が の下に表示されます。
ジョブをランナーが受け付けるためには、自己ホストランナーアプリケーションが動作していなければなりません。 ランナー アプリケーションが GitHub Enterprise Cloud に接続されており、ジョブの受信準備ができたら、以下のメッセージがコンピューターのターミナルに表示されます。
√ Connected to GitHub
2019-10-24 05:45:56Z: Listening for Jobs
詳しくは、「自己ホストランナーのモニタリングとトラブルシューティング」をご覧ください。
Note
セキュリティ上の理由により、既定ではパブリック リポジトリはランナー グループ内のランナーを使用できませんが、ランナー グループの設定でこれをオーバーライドできます。 詳しくは、「グループを使用してセルフホストランナーへのアクセスを管理する」を参照してください。
自己ホストランナーを Enterprise に追加する
自己ホスト ランナーを Enterprise に追加できます。この場合、複数の組織に割り当てることができます。 組織のオーナーは、どのリポジトリがそれを使用できるかをコントロールできます。
新しいランナーが既定のグループに割り当てられます。 ランナーを登録した後、ランナーのグループを変更できます。 詳しくは、「グループを使用してセルフホストランナーへのアクセスを管理する」をご覧ください。
自己ホスト ランナーを Enterprise に追加するには、Enterprise のオーナーである必要があります。 REST API を使用して自己ホスト ランナーを追加する方法については、GitHub Actions REST API の Enterprise エンドポイントを参照してください。
-
GitHub の右上隅にあるプロフィール写真をクリックします。
-
ご自分の環境に応じて、[Your enterprise] または [Your enterprises] をクリックし、表示するエンタープライズをクリックします。
-
ページの左側にある Enterprise アカウントのサイドバーで、 [ポリシー] をクリックします。
-
「 ポリシー」で、[アクション] をクリックします。
-
[Runners](ランナー) タブをクリックします。
-
[新しいランナー] をクリックし、 [新しいセルフホステッド ランナー] をクリックします。 1. 使用する自己ホスト ランナー マシンのオペレーティング システム イメージとアーキテクチャを選択します。
-
ランナーアプリケーションをダウンロードして、使用する自己ホストランナーのマシンにインストールする方法が表示されます。
自己ホストランナーのマシンでシェルを開き、表示順に従ってシェルコマンドを実行してください。
Note
Windows では、自己ホスト ランナー アプリケーションをサービスとしてインストールする場合は、シェルを管理者特権で開く必要があります。 また、
C:\actions-runner
を自己ホスト ランナー アプリケーション用のディレクトリとして使用し、Windows のシステム アカウントでランナー ディレクトリにアクセスできるようにすることをお勧めします。この指示に従えば、以下のタスクが完了します。
- 自己ホストランナーアプリケーションのダウンロードと展開。
config
スクリプトを実行して自己ホスト ランナー アプリケーションを設定し、GitHub Actions に登録します。config
スクリプトには、登録先の URL と、リクエストを認証してもらうための自動的に生成された時間制限付きのトークンが必要です。 トークンは1時間後に期限切れになります。- Windows では、
config
スクリプトから自己ホスト ランナーをサービスとしてインストールするかどうかも尋ねられます。 LinuxとmacOSでは、ランナーの追加を終えた後にサービスをインストールできます。 詳しくは、「自己ホストランナーアプリケーションをサービスとして設定する」を参照してください。
- Windows では、
- 自己ホストランナーアプリケーションを実行して、マシンをGitHub Actionsに接続します。
自己ホストランナーの追加に成功したことの確認
自己ホスト ランナーを追加する手順を完了すると、ランナーとその状態が の下に表示されます。
ジョブをランナーが受け付けるためには、自己ホストランナーアプリケーションが動作していなければなりません。 ランナー アプリケーションが GitHub Enterprise Cloud に接続されており、ジョブの受信準備ができたら、以下のメッセージがコンピューターのターミナルに表示されます。
√ Connected to GitHub
2019-10-24 05:45:56Z: Listening for Jobs
詳しくは、「自己ホストランナーのモニタリングとトラブルシューティング」をご覧ください。
Note
セキュリティ上の理由により、既定ではパブリック リポジトリはランナー グループ内のランナーを使用できませんが、ランナー グループの設定でこれをオーバーライドできます。 詳しくは、「グループを使用してセルフホストランナーへのアクセスを管理する」を参照してください。
Enterprise ランナーをリポジトリで利用可能にする
デフォルトでは、Enterprise の「デフォルト」の自己ホストランナーグループのランナーは、Enterprise 内のすべての Organization で使用できますが、各 Organization のすべてのリポジトリで使用できるわけではありません。
Enterprise レベルの自己ホストランナーグループを Organization リポジトリで使用できるようにするには、ランナーグループの Organization の継承設定を変更して、Organization 内のリポジトリでランナーを使用できるようにする必要がある場合があります。
ランナー グループのアクセス設定を変更する方法の詳細については、「グループを使用してセルフホストランナーへのアクセスを管理する」を参照してください。