使用环境变量配置代理服务器
如果需要一个自托管运行器来通过代理服务器通信,则自托管运行器应用程序使用在以下环境变量中设置的代理配置:
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
当自托管运行器应用程序启动时,会读取代理环境变量,因此您必须在配置或启动自托管运行器应用程序之前设置环境变量。 如果代理配置发生更改,则必须重启自托管运行程序应用程序。
Note
为了避免问题,无论所用操作系统和 shell 的行为为何,最好将环境变量视为区分大小写。
在 Windows 计算机上,代理环境变量名称不区分大小写。 在 Linux 和 macOS 机器上,建议环境变量全部小写。 如果 Linux 或 macOS 上的环境变量具有小写和大写形式(例如 https_proxy
和 HTTPS_PROXY
),自托管运行程序应用程序会使用小写环境变量。
自托管运行器和 GitHub Enterprise Cloud 通过 HTTPS(端口 443)建立连接。
使用 .env 文件设置代理配置
如果设置环境变量不可行,可以在自托管运行器应用程序目录(即运行器软件下载并解包到的目录)中名为 .env
的文件中设置代理配置变量。 例如,如果您想要将运行器应用程序配置为系统帐户下的服务,这可能是必需的。 当运行器应用程序启动时,它会读取 .env
中为代理配置设置的变量。
.env
代理配置示例
https_proxy=http://proxy.local:8080
no_proxy=example.com,myserver.local:443
设置 Docker 容器的代理配置
如果您在工作流程中使用 Docker 容器操作或服务容器,则除了设置上述环境变量外,可能还需要配置 Docker来使用代理服务器。
有关所需 Docker 配置的信息,请参阅 Docker 文档中的“配置 Docker 以使用代理服务器”。