Skip to main content

选择作业的运行器

定义将在工作流程中处理作业的计算机类型。

概览

使用 jobs.<job_id>.runs-on 来定义运行作业的计算机类型。 计算机可以是 GitHub 托管的运行器,也可以是自托管的运行器。 可以将 runs-on 作为单个字符串或字符串数组提供。 如果指定字符串数组,则工作流程将在自托管运行器上运行,其标签与所有指定的 runs-on 值(如果可用)匹配。 如果要在多台计算机上运行工作流程,请使用 jobs.<job_id>.strategy

选择 GitHub 托管的运行器

If you use a GitHub-hosted runner, each job runs in a fresh instance of a runner image specified by runs-on.

可用的 GitHub 托管的运行器类型包括:

Runner image YAML 工作流程标签 注:
Windows Server 2022 windows-latestwindows-2022 windows-latest 标签目前使用 Windows Server 2022 运行器映像。
Windows Server 2019 windows-2019
Ubuntu 22.04 ubuntu-22.04
Ubuntu 20.04 ubuntu-latestubuntu-20.04
Ubuntu 18.04 [deprecated] ubuntu-18.04 Migrate to ubuntu-20.04 or ubuntu-22.04. For more information, see this GitHub blog post.
macOS Monterey 12 macos-12
macOS Big Sur 11 macos-latestmacos-11 macos-latest 标签目前使用 macOS 11 运行器映像。
macOS Catalina 10.15 [deprecated] macos-10.15 Migrate to macOS-11 or macOS-12. For more information, see this GitHub blog post.

Note: The -latest runner images are the latest stable images that GitHub provides, and might not be the most recent version of the operating system available from the operating system vendor.

注意: 测试版和已弃用映像均按“原样”、“包含所有故障”和“可用”提供,并且不在服务级别协议和保修范围内。 测试版映像可能不在客户支持范围内。

示例:指定操作系统

runs-on: ubuntu-latest

更多信息请参阅“关于 GitHub 托管的运行器”。

选择自托管的运行器

要为工作指定自托管的运行器,请在工作流程文件中使用自托管运行器标签配置 runs-on

所有自托管运行器都有 self-hosted 标签。 仅使用此标签将选择任何自托管运行器。 要选择满足特定条件(如操作系统或体系结构)的运行器,我们建议提供一组标签,这些标签以 self-hosted 开头(必须首先列出),然后根据需要包含其他标签。 指定一系列标签时,作业将在具有指定的所有标签的运行器上排队。

虽然 self-hosted 标签不是必需的,但我们强烈建议在使用自托管运行器时指定它,以确保您的作业不会无意中指定任何当前或将来 GitHub 托管的运行器。

示例:使用标签选择运行器

runs-on: [self-hosted, linux]

更多信息请参阅“关于自托管的运行器”和“在工作流程中使用自托管的运行器”。