注: GitHub 托管的运行器目前在 GitHub Enterprise Server 上不受支持。 您可以在 GitHub 公共路线图 上查看有关未来支持计划的更多信息。
概览
Use jobs.<job_id>.runs-on
to define the type of machine to run the job on. You can provide runs-on
as a single string or as an array of strings. If you specify an array of strings, your workflow will run on a self-hosted runner whose labels match all of the specified runs-on
values, if available. If you would like to run your workflow on multiple machines, use jobs.<job_id>.strategy
.
注: GitHub 托管的运行器目前在 GitHub Enterprise Server 上不受支持。 您可以在 GitHub 公共路线图 上查看有关未来支持计划的更多信息。
Choosing GitHub-hosted runners
如果使用 GitHub 托管的运行器,每个作业将在 runs-on
指定的虚拟环境的新实例中运行。
可用的 GitHub 托管的运行器类型包括:
虚拟环境 | YAML 工作流程� �签 | 注: |
---|---|---|
Windows Server 2022 |
windows-2022
|
The windows-latest label currently uses the Windows Server 2019 runner image.
|
Windows Server 2019 |
windows-latest 或 windows-2019
|
|
Windows Server 2016[deprecated] |
windows-2016
|
Migrate to Windows 2019 or Windows 2022. For more information, see the blog post. |
Ubuntu 20.04 |
ubuntu-latest 或 ubuntu-20.04
|
|
Ubuntu 18.04 |
ubuntu-18.04
|
|
macOS Big Sur 11 |
macos-latest 或 macos-11
|
The macos-latest label currently uses the macOS 11 runner image.
|
macOS Catalina 10.15 |
macos-10.15
|
Note: The -latest
virtual environments 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.
Note: Beta and Deprecated Images are provided "as-is", "with all faults" and "as available" and are excluded from the service level agreement and warranty. Beta Images may not be covered by customer support.
Example: Specifying an operating system
runs-on: ubuntu-latest
更多信息请参阅“GitHub 托管的运行器的虚拟环境”。
Choosing self-hosted runners
要为工作指定自托管的运行器,请在工作流程文件中使用自托管运行器� �签配置 runs-on
。
所有自托管运行器都有 self-hosted
� �签。 仅使用此� �签将选择任何自托管运行器。 To select runners that meet certain criteria, such as operating system or architecture, we recommend providing an array of labels that begins with self-hosted
(this must be listed first) and then includes additional labels as needed. When you specify an array of labels, jobs will be queued on runners that have all the labels that you specify.
Although the self-hosted
label is not required, we strongly recommend specifying it when using self-hosted runners to ensure that your job does not unintentionally specify any current or future GitHub-hosted runners.
Example: Using labels for runner selection
runs-on: [self-hosted, linux]
更多信息请参阅“关于自托管的运行器”和“在工作流程中使用自托管的运行器”。