安装并启动 TeamCity 代理
TeamCity 构建代理 是一种软件,它侦听来自 TeamCity 服务器的命令并启动实际的构建过程。 一个生产环境下的 TeamCity 设置需要在专用机器上安装额外的构建代理。 在此之前,请确保阅读关于 代理服务器通讯、系统要求、冲突软件以及安全性的注释。
如果您安装了与 Tomcat servlet 容器捆绑的 TeamCity ,或使用 TeamCity 的 Windows 安装程序,服务器和一个构建代理都会安装在同一台机器上。 这并不是 生产环境 推荐的配置方式,因为存在 安全问题。 此外,构建过程可能会降低网络用户界面的响应速度,从而影响整体 TeamCity 服务器的运行效率。
代理服务器数据传输
一个 TeamCity 代理通过配置为 serverUrl
代理属性的 URL 连接到 TeamCity 服务器。 这被称为单向 agent-to-server (代理到服务器)连接。
代理使用单向代理至服务器连接通过轮询协议:代理建立一个 HTTP(S) 连接到 TeamCity 服务器,并定期轮询服务器以获取服务器命令。
将本地代理连接到 TeamCity 服务器
远程调试代理
在代理安装并连接之后,您可以直接从 TeamCity UI 调用此代理的机器的终端。 这项功能让您可以远程查看代理日志,检查已安装的软件,并对特定的代理问题进行调试。
要调用终端,点击 TeamCity 标题中的 Agents,选择所需的代理,然后点击 Open terminal。
您也可以从 构建结果页面 打开此终端。 在这种情况下,终端会在 checkout directory 中打开,而不是在 $HOME
文件夹中打开。
当终端打开后,您可以点击 Open in a separate tab (在独立选项卡中打开)链接,以获得更大的客户区域。
Open terminal 按钮适用于所有类型的代理机器(Linux,Windows 和 macOS),并以启动 TeamCity 代理的同一用户身份调用终端。
为了确保您在进行维护时构建代理处于空闲状态,请禁用它,但不要停止它,因为终端会话需要一个 运行中的 构建代理。 停止构建代理会冻结之前打开的终端标签页,阻止用户输入新的命令。
对于云代理,如果他们在闲置一段时间后会自动终止,点击 "Disable for maintenance..." 按钮,以保持代理的机器运行。
Open terminal 链接仅对拥有 角色权限 中包含 "Invoke interactive agent terminals" 权限的用户可见。 应授予此权限给所有与相应 agent 的 代理池 关联的项目。 拥有 "Project Administrator" 和 "System Administrator" 角色的用户默认具有此权限。 作为额外的预防措施,每个打开终端的请求都会作为新的 "Agent actions | Connect to agent" 活动写入审核日志。