Skip to main content

Adding self-hosted runners

You can add a self-hosted runner to a repository, an organization, or an enterprise.

You can add a self-hosted runner to a repository, an organization, or an enterprise.

If you are an organization or enterprise administrator, you might want to add your self-hosted runners at the organization or enterprise level. This approach makes the runner available to multiple repositories in your organization or enterprise, and also lets you to manage your runners in one place.

For information on supported operating systems for self-hosted runners, or using self-hosted runners with a proxy server, see "About self-hosted runners."

Warning: 建议仅将自托管运行器用于私有仓库。 这是因为,通过创建在工作流程中执行代码的拉取请求,仓库的复刻可能会在您的自托管运行器上运行危险代码。

For more information, see "About self-hosted runners."

You can set up automation to scale the number of self-hosted runners. For more information, see "Autoscaling with self-hosted runners."

Prerequisites

  • 必须有权访问将在环境中用作自承载运行器的计算机。

  • 有关详细信息,请参阅“关于自承载运行器”。

Adding a self-hosted runner to a repository

You can add self-hosted runners to a single repository. To add a self-hosted runner to a user repository, you must be the repository owner. For an organization repository, you must be an organization owner or have admin access to the repository. For information about how to add a self-hosted runner with the REST API, see "Self-hosted runners."

  1. 在 GitHub.com 上,导航到存储库的主页。

  2. 在存储库名称下,单击 “设置”。 “存储库设置”按钮

  3. In the left sidebar, click Actions, then click Runners.

  4. Click New self-hosted runner.

  5. 选择自托管运行器计算机的操作系统映像和体系结构。

  6. 您将看到指示您如何下载运行器应用程序并安装到自托管运行器机器上的说明。

    在自托管运行器机器上打开 shell,并按显示的顺序运行每个 shell 命令。

    注意:在 Windows 上,如果要将自托管运行器应用程序安装为服务,必须打开具有管理员权限的 shell。 我们还建议你使用 C:\actions-runner 作为自托管运行器应用程序的目录,以便 Windows 系统帐户可以访问运行器目录。

    这些说明将指导您完成以下任务:

    • 下载并提取自托管运行器应用程序。
    • 运行 config 脚本配置自托管运行器应用程序,并将其注册到 GitHub Actions。 config 脚本需要目标 URL 和自动生成的时间限制令牌对请求进行身份验证。
      • 在 Windows 上,config 脚本还会询问你是否想将自托管运行器应用程序安装为服务。 对于 Linux 和 macOS,您可以在完成添加运行器后安装服务。 有关详细信息,请参阅“将自托管运行应用程序配置为服务”。
    • 运行自托管运行器应用程序以将机器连接到 GitHub Actions。

检查您的自托管运行器是否已成功添加

在完成添加自托管运行器的步骤后,运行器及其状态列在“运行器”下。

必须激活自托管运行器应用程序,运行器才能接受作业。 当运行器应用程序连接到 GitHub 并准备接收作业时,你将在机器的终端上看到以下消息。

√ Connected to GitHub

2019-10-24 05:45:56Z: Listening for Jobs

For more information, see "Monitoring and troubleshooting self-hosted runners."

Adding a self-hosted runner to an organization

You can add self-hosted runners at the organization level, where they can be used to process jobs for multiple repositories in an organization. To add a self-hosted runner to an organization, you must be an organization owner. For information about how to add a self-hosted runner with the REST API, see "Self-hosted runners."

  1. 在 GitHub.com 上,导航到组织的主页。

  2. 在组织名称下,单击“设置”。 组织设置按钮

  3. In the left sidebar, click Actions, then click Runners.

  4. Click New runner, then click New self-hosted runner.

  5. 选择自托管运行器计算机的操作系统映像和体系结构。

  6. 您将看到指示您如何下载运行器应用程序并安装到自托管运行器机器上的说明。

    在自托管运行器机器上打开 shell,并按显示的顺序运行每个 shell 命令。

    注意:在 Windows 上,如果要将自托管运行器应用程序安装为服务,必须打开具有管理员权限的 shell。 我们还建议你使用 C:\actions-runner 作为自托管运行器应用程序的目录,以便 Windows 系统帐户可以访问运行器目录。

    这些说明将指导您完成以下任务:

    • 下载并提取自托管运行器应用程序。
    • 运行 config 脚本配置自托管运行器应用程序,并将其注册到 GitHub Actions。 config 脚本需要目标 URL 和自动生成的时间限制令牌对请求进行身份验证。
      • 在 Windows 上,config 脚本还会询问你是否想将自托管运行器应用程序安装为服务。 对于 Linux 和 macOS,您可以在完成添加运行器后安装服务。 有关详细信息,请参阅“将自托管运行应用程序配置为服务”。
    • 运行自托管运行器应用程序以将机器连接到 GitHub Actions。

检查您的自托管运行器是否已成功添加

在完成添加自托管运行器的步骤后,运行器及其状态列在“运行器”下。

必须激活自托管运行器应用程序,运行器才能接受作业。 当运行器应用程序连接到 GitHub 并准备接收作业时,你将在机器的终端上看到以下消息。

√ Connected to GitHub

2019-10-24 05:45:56Z: Listening for Jobs

For more information, see "Monitoring and troubleshooting self-hosted runners."

注意:出于安全原因,公共存储库默认不能在运行器组中使用运行器,但你可以在运行器组的设置中覆盖此项。 有关详细信息,请参阅“使用组管理对自托管运行器的访问权限”。

Adding a self-hosted runner to an enterprise

If you use GitHub Enterprise Cloud, you can add self-hosted runners to an enterprise, where they can be assigned to multiple organizations. The organization admins are then able to control which repositories can use it. For more information, see the GitHub Enterprise Cloud documentation.