Skip to main content

セルフホストランナーとプロキシ サーバーを使う

GitHubとの通信にプロキシサーバーを使うよう、セルフホストランナーを設定できます。

環境変数を利用したプロキシサーバーの設定

セルフホスト型ランナーがプロキシ・サーバーを介して通信する必要がある場合、セルフホスト型ランナー・アプリケーションは、以下の環境変数で設定されたプロキシ構成セットを使用します:

  • https_proxy: HTTPS トラフィックのプロキシ URL。 必要な場合には、基本認証の資格証明を含めることもできます。 例えば:
    • http://proxy.local
    • http://192.168.1.1:8080
    • http://username:password@proxy.local
  • http_proxy: HTTP トラフィックのプロキシ URL。 必要な場合には、基本認証の資格証明を含めることもできます。 例えば:
    • http://proxy.local
    • http://192.168.1.1:8080
    • http://username:password@proxy.local
  • no_proxy: プロキシを使用しないホストのコンマ区切りのリスト。 no_proxy にはホスト名のみを指定できます。IP アドレスは使用できません。 例えば:
    • example.com
    • example.com,myserver.local:443,example.org

プロキシの環境変数は、セルフホストランナーアプリケーションの起動時に読み込まれるので、これらの環境変数はセルフホストランナーアプリケーションを設定あるいは起動する前に設定しなければなりません。 プロキシの構成を変更した場合は、セルフホステッド ランナー アプリケーションを再起動する必要があります。

: 問題を回避するには、使用しているオペレーティング システムとシェルの動作に関係なく、環境変数を大文字と小文字を区別するものとして扱うことをお勧めします。

Windowsマシンでは、プロキシ環境変数名の大文字と小文字は区別されされません。 Linux及びmacOSマシンで、環境変数はすべて小文字にすることをおすすめします。 Linux または macOS 上で、https_proxyHTTPS_PROXY のように、小文字と大文字の両方の環境変数がある場合、セルフホステッド ランナー アプリケーションには小文字の環境変数が使用されます。

.envファイルを使用したプロキシ設定

環境変数を設定することが現実的ではない場合、プロキシ設定変数をセルフホスト ランナー アプリケーションのディレクトリ(つまり、ランナーソフトウェアをダウンロードして解凍したディレク トリ)内の .env という名前のファイルで設定できます。 これはたとえば、ランナーアプリケーションをシステムアカウント下のサービスとして設定したい場合に必要になるかもしれません。 ランナー アプリケーションが起動すると、.envに設定されたプロキシ設定の変数が読み取られます。

.envリバース プロキシの構成

https_proxy=http://proxy.local:8080
no_proxy=example.com,myserver.local:443

Dockerコンテナのプロキシ設定を行う

ワークフロー中でDockerコンテナアクションやサービスコンテナを使うなら、上記の環境変数の設定に加えて、プロキシサーバーを使うようDockerも設定しなければならないかもしれません。

必要な Docker 構成の詳細については、Docker のドキュメントの「プロキシサーバを使うように Docker を設定」を参照してください。