在同一台机器上运行多个 TeamCity 代理

通常情况下,我们建议为每个物理机或虚拟机安装一个构建代理,因为这将使构建的行为更可预测,并避免发生数据冲突。 但是,如果您想在同一台机器上运行多个并行构建,可以在这台机器上设置多个构建代理。

为此,请照常安装第一个构建代理。 在同一台机器上安装和配置代理时,请记住:

  • 使用不同的操作系统用户帐户安装每个新代理。 这将防止工件缓存等用户资源发生冲突。
  • 将每个代理安装在不同的本地目录中。
  • 调整每个代理的配置文件 (conf/buildAgent.properties):
    • 为 `name` 和 `port` 设置唯一任意值。
    • 指定代理自己的工作目录 (`workDir`) 和临时目录 (`tempDir`) 的相对路径。 每个代理都应有这些目录的独立副本。
    • 清除(删除或移除值)`authorizationToken` 属性。 代理在连接到服务器时会收到这些令牌。
    • 如果您的 TeamCity 本地部署服务器安装在反向代理后面,请记得将 `serverUrl` 设置为代理地址。

    如果您是 TeamCity Cloud 用户,可以自动生成唯一的代理配置文件:转到 Agents(代理),打开屏幕右上角的 Install Build Agents(安装构建代理)菜单,然后点击 Use authentication token(使用身份验证令牌)。 选择 Download config(下载配置)选项并输入代理名称(构建代理配置中的 `name` 特性),下载整个配置文件。 将其作为 `buildAgent.properties` 文件放置在构建代理目录中。 如上所述进行修改。

  • 确保您的构建步骤和脚本使用构建签出目录中文件的相对路径,而不是代理机器上的绝对路径。 如有必要,您可以启用干净签出选项,始终在构建之前直接从 VCS 仓库中获取源。

帮助文章更详细地描述了安装过程,并包含适用于 Windows 和 macOS 机器的重要说明。