---
url: /zh/build/build-node.md
---
当您在使用云原生构建时，本质上是将构建任务下发到各构建节点中执行。集群以指定的 Docker 镜像作为构建环境执行构建任务。

## 配置方式

声明 `pipeline.runner.tags` 属性，即可选择不同构建节点。
声明 `pipeline.runner.cpus` 属性，即可配置需使用的 CPU 核数。

官方可用的构建节点如下：

1. `cnb:arch:amd64`
   * `amd64` 架构
   * `runner.cpus` 可配置范围为 1 ~ 64，默认为 8
   * `云原生构建-单次最大可用时间` 20小时
   * `云原生开发-单次最大可用时间` 18小时
2. `cnb:arch:arm64:v8`
   * `arm64/v8` 架构
   * `runner.cpus` 可配置范围为 1 ~ 16，默认为 8
   * `云原生构建-单次最大可用时间` 20小时
   * `云原生开发-单次最大可用时间` 18小时
3. `cnb:arch:amd64:gpu`
   * `amd64` 架构
   * `runner.cpus` 固定为 16
   * `GPU` 显存最大为 48GB，共享模式
   * `云原生构建-单次最大可用时间` 4小时
   * `云原生开发-单次最大可用时间` 4小时
4. `cnb:arch:amd64:gpu:H20` -- 不推荐使用，因为 H20 已停产
   * `amd64` 架构
   * `runner.cpus` 固定为 32
   * `GPU` 显存最大为 96GB，共享模式
   * `云原生构建-单次最大可用时间` 4小时
   * `云原生开发-单次最大可用时间` 4小时
5. `cnb:arch:amd64:gpu:L40`
   * `amd64` 架构
   * `runner.cpus` 固定为 16
   * `GPU` 显存最大为 48GB，共享模式
   * `云原生构建-单次最大可用时间` 4小时
   * `云原生开发-单次最大可用时间` 4小时

示例：

```yaml
main:
  push:
    - runner:
        # 指定在 amd64 架构构建节点上执行
        tags: cnb:arch:amd64
        cpus: 8
      stages:
        - name: uname
          script: uname -a

    - runner:
        # 指定在 arm64/v8 架构构建节点上执行
        tags: cnb:arch:arm64:v8
        cpus: 8
      stages:
        - name: uname
          script: uname -a

$:
  vscode:
    - runner:
        # 启动一个能使用 gpu 的远程开发环境
        tags: cnb:arch:amd64:gpu
      services:
        - vscode
```
