{"meta":{"title":"在较大的运行器上运行作业","intro":"识别可用的 大型运行器，然后使用运行器组和工作流标签将作业路由到正确的运行器。","product":"GitHub Actions","breadcrumbs":[{"href":"/zh/actions","title":"GitHub Actions"},{"href":"/zh/actions/how-tos","title":"操作方法"},{"href":"/zh/actions/how-tos/manage-runners","title":"管理运行器"},{"href":"/zh/actions/how-tos/manage-runners/larger-runners","title":"大型运行程序"},{"href":"/zh/actions/how-tos/manage-runners/larger-runners/use-larger-runners","title":"使用大型运行器"}],"documentType":"article"},"body":"# 在较大的运行器上运行作业\n\n识别可用的 大型运行器，然后使用运行器组和工作流标签将作业路由到正确的运行器。\n\n## 标识存储库的可用运行程序\n\n如果对存储库具有 `repo: write` 访问权限，则可以查看存储库可用的运行器列表。\n\n1. 在 GitHub 上，导航到存储库的主页面。\n2. 在仓库名称下，单击“<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-play\" aria-label=\"play\" role=\"img\"><path d=\"M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm4.879-2.773 4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559V5.442a.25.25 0 0 1 .379-.215Z\"></path></svg> Actions”\\*\\*\\*\\*。\n\n   ![“github/docs”存储库的选项卡的屏幕截图。 “操作”选项卡以橙色边框突出显示。](/assets/images/help/repository/actions-tab-global-nav-update.png)\n3. 在左边栏中的“Management”部分下，单击 <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-server\" aria-label=\"server\" role=\"img\"><path d=\"M1.75 1h12.5c.966 0 1.75.784 1.75 1.75v4c0 .372-.116.717-.314 1 .198.283.314.628.314 1v4a1.75 1.75 0 0 1-1.75 1.75H1.75A1.75 1.75 0 0 1 0 12.75v-4c0-.358.109-.707.314-1a1.739 1.739 0 0 1-.314-1v-4C0 1.784.784 1 1.75 1ZM1.5 2.75v4c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25v-4a.25.25 0 0 0-.25-.25H1.75a.25.25 0 0 0-.25.25Zm.25 5.75a.25.25 0 0 0-.25.25v4c0 .138.112.25.25.25h12.5a.25.25 0 0 0 .25-.25v-4a.25.25 0 0 0-.25-.25ZM7 4.75A.75.75 0 0 1 7.75 4h4.5a.75.75 0 0 1 0 1.5h-4.5A.75.75 0 0 1 7 4.75ZM7.75 10h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM3 4.75A.75.75 0 0 1 3.75 4h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 3 4.75ZM3.75 10h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5Z\"></path></svg>“Runners”\\*\\*\\*\\*。\n4. 查看存储库可用的运行器列表。\n5. （可选）要复制运行器标签以在工作流中使用，请单击运行器右侧的 <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"More options\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>，然后单击“复制标签”。\\*\\*\\*\\*\n\n> \\[!NOTE]\n> 企业和组织所有者可以在此页面创建运行器。 若要创建新的运行器，请单击运行器列表右上角的“新建运行器”\\*\\*\\*\\*，将运行器添加到存储库。\n>\n> 有关详细信息，请参阅 [管理较大的运行器](/zh/actions/how-tos/manage-runners/larger-runners/manage-larger-runners) 和 [添加自托管的运行器](/zh/actions/how-tos/manage-runners/self-hosted-runners/add-runners)。\n\n## 在工作流中定位大型运行器\n\n在确定要使用的 大型运行器 后，您可以在工作流中使用运行器组、工作流标签或两者来指定它们。 使用运行程序组将作业路由到一组运行程序、将工作流标签定向到具有特定标签的运行程序，或者在作业必须与这两个条件匹配时同时将作业路由到两者。\n\n如果管理员禁用了标准的 GitHub 托管运行器，则只能使用运行器组。\n\n### 按运行程序组设定目标\n\n在工作流中引用运行器组名称。 如果您希望将作业分配给特定组中的任意可用运行器，请使用此项。\n\n<div class=\"ghd-tool linux\">\n\n在此示例中，运行器已添加到名为 `build-runners` 的组。\n`runs-on` 键将作业发送到 `build-runners` 组中的任何可用运行器：\n\n```yaml\nname: learn-github-actions\non: [push]\njobs:\n  check-bats-version:\n    runs-on: \n      group: build-runners\n    steps:\n      - uses: actions/checkout@v6\n      - uses: actions/setup-node@v7\n        with:\n          node-version: '14'\n      - run: npm install -g bats\n      - run: bats -v\n```\n\n</div>\n\n<div class=\"ghd-tool windows\">\n\n在此示例中，运行器已添加到名为 `build-runners` 的组。\n`runs-on` 键将作业发送到 `build-runners` 组中的任何可用运行器：\n\n```yaml\nname: learn-github-actions\non: [push]\njobs:\n  check-bats-version:\n    runs-on: \n      group: build-runners\n    steps:\n      - uses: actions/checkout@v6\n      - uses: actions/setup-node@v7\n        with:\n          node-version: '14'\n      - run: npm install -g bats\n      - run: bats -v\n```\n\n</div>\n\n<div class=\"ghd-tool mac\">\n\n在此示例中，`runs-on` 键会将作业发送到 `macos-build-runners` 组中的任意可用运行器：\n\n```yaml\nname: learn-github-actions\non: [push]\njobs:\n  check-swift-version:\n    runs-on:\n      group: macos-build-runners\n    steps:\n      - uses: actions/checkout@v6\n      - name: Build\n        run: swift build\n      - name: Run tests\n        run: swift test\n```\n\n</div>\n\n### 按工作流标签定位\n\n如果要将作业路由到共享特定标签的运行程序，请在工作流中引用工作流标签。\n\n大型运行器会被自动分配一个与运行器名称匹配的工作流标签。\n\n<div class=\"ghd-tool linux\">\n\n在此示例中， `runs-on` 密钥将作业发送给已分配 `ubuntu-24.04-16core` 标签的任何可用运行器：\n\n```yaml\nname: learn-github-actions\non: [push]\njobs:\n  check-bats-version:\n    runs-on:\n      labels: ubuntu-24.04-16core\n    steps:\n      - uses: actions/checkout@v6\n      - uses: actions/setup-node@v7\n        with:\n          node-version: '14'\n      - run: npm install -g bats\n      - run: bats -v\n```\n\n</div>\n\n<div class=\"ghd-tool windows\">\n\n在此示例中， `runs-on` 密钥将作业发送给已分配 `windows-2022-16core` 标签的任何可用运行器：\n\n```yaml\nname: learn-github-actions\non: [push]\njobs:\n  check-bats-version:\n    runs-on:\n      labels: windows-2022-16core\n    steps:\n      - uses: actions/checkout@v6\n      - uses: actions/setup-node@v7\n        with:\n          node-version: '14'\n      - run: npm install -g bats\n      - run: bats -v\n```\n\n</div>\n\n<div class=\"ghd-tool mac\">\n\n对于 macOS 大型运行器，你可以使用以下任一工作流标签：由 GitHub 定义的工作流标签，或在创建时根据你为 大型运行器 设置的名称自动分配的工作流标签。 有关可用 macOS 工作流标签的列表，请参阅 [大型运行程序参考](/zh/actions/reference/runners/larger-runners#available-macos-larger-runners-and-labels)。\n\n在此示例中， `runs-on` 密钥将作业发送到已分配 `macos-26-xlarge` 标签的任何可用运行程序。\n\n```yaml\nname: learn-github-actions\non: [push]\njobs:\n  check-swift-version:\n    runs-on: macos-26-xlarge\n    steps:\n      - uses: actions/checkout@v6\n      - name: Build\n        run: swift build\n      - name: Run tests\n        run: swift test\n```\n\n</div>\n\n### 使用组和组来控制作业的运行位置\n\n当作业必须仅在属于特定组且具有特定标签的运行器上运行时，请同时使用标签和组。 运行器必须同时满足这两项要求，才有资格运行该作业。\n\n<div class=\"ghd-tool linux\">\n\n组合组和标签时，运行器必须满足这两项要求才能运行作业。\n\n在此示例中，`runs-on` 键结合了 `group` 和 `labels`，从而将该作业路由到组内任何具有匹配标签的可用运行器：\n\n```yaml\nname: learn-github-actions\non: [push]\njobs:\n  check-bats-version:\n    runs-on:\n      group: ubuntu-runners\n      labels: ubuntu-24.04-16core\n    steps:\n      - uses: actions/checkout@v6\n      - uses: actions/setup-node@v7\n        with:\n          node-version: '14'\n      - run: npm install -g bats\n      - run: bats -v\n```\n\n</div>\n\n<div class=\"ghd-tool windows\">\n\n组合组和标签时，运行器必须满足这两项要求才能运行作业。\n\n在此示例中，`runs-on` 键结合了 `group` 和 `labels`，从而将该作业路由到组内任何具有匹配标签的可用运行器：\n\n```yaml\nname: learn-github-actions\non: [push]\njobs:\n  check-bats-version:\n    runs-on:\n      group: ubuntu-runners\n      labels: ubuntu-24.04-16core\n    steps:\n      - uses: actions/checkout@v6\n      - uses: actions/setup-node@v7\n        with:\n          node-version: '14'\n      - run: npm install -g bats\n      - run: bats -v\n```\n\n</div>\n\n<div class=\"ghd-tool mac\">\n\n在此示例中，`runs-on` 键结合了 `group` 和 `labels`，从而将该作业路由到组内任何具有匹配标签的可用运行器：\n\n```yaml\nname: learn-github-actions\non: [push]\njobs:\n  check-swift-version:\n    runs-on:\n      group: macos-runners\n      labels: macos-26-xlarge\n    steps:\n      - uses: actions/checkout@v6\n      - name: Build\n        run: swift build\n      - name: Run tests\n        run: swift test\n```\n\n</div>\n\n## 延伸阅读\n\n有关密钥的 `runs-on` 语法详细信息，请参阅 [GitHub Actions 的工作流语法](/zh/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idruns-on)。\n\n有关规范、标签、限制和故障排除信息，请参阅 [大型运行程序参考](/zh/actions/reference/runners/larger-runners)。"}