# 自定义 GitHub 托管的运行器

可以将其他软件作为工作流的一部分安装在GitHub托管的运行程序上。

> \[!NOTE]
> GitHub Enterprise Server 目前不支持 GitHub 托管的运行器。

如果您需要在 GitHub 托管的运行器上使用其他软件包，则可以创建一个作业，在工作流中安装这些软件包。

若要查看默认已安装的包，请参阅“[GitHub 托管的运行程序](/zh/enterprise-server@3.22/actions/concepts/runners/github-hosted-runners#preinstalled-software-for-github-owned-images)”。

本指南演示如何创建一个作业，以便在 GitHub 托管的运行器上安装额外软件。

## 在 Ubuntu 运行器上安装软件

以下示例演示如何在作业中安装 `apt` 包。

```yaml
name: Build on Ubuntu
on: push

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Check out repository code
        uses: actions/checkout@v6
      - name: Install jq tool
        run: |
          sudo apt-get update
          sudo apt-get install jq
```

> \[!NOTE]
> 安装包之前始终运行 `sudo apt-get update`。 如果 `apt` 索引已经过时，此命令将获取并重新索引任何可用的包，这有助于防止包安装失败。

## 在 macOS 运行器上安装软件

以下示例演示如何将 Brew 包和桶安装为作业的一部分。

```yaml
name: Build on macOS
on: push

jobs:
  build:
    runs-on: macos-latest
    steps:
      - name: Check out repository code
        uses: actions/checkout@v6
      - name: Install GitHub CLI
        run: |
          brew update
          brew install gh
      - name: Install Microsoft Edge
        run: |
          brew update
          brew install --cask microsoft-edge
```

## 在Windows运行器上安装软件

以下示例演示如何使用 [Chocolatey](https://community.chocolatey.org/packages) 在任务中安装 GitHub CLI。

```yaml
name: Build on Windows
on: push
jobs:
  build:
    runs-on: windows-latest
    steps:
      - run: choco install gh
      - run: gh version
```