配置 构建代理 启动属性
在 TeamCity 中,一个 构建代理 包含两个进程:
代理启动器 —— 一个启动代理进程的 Java 进程。
代理 — 构建代理的主要进程;作为代理启动器的子进程运行。
无论您是通过 agent.bat|sh
脚本运行构建代理,还是作为Windows服务运行,代理启动器都会先启动,然后才启动代理本身。 请记住,通过脚本运行代理是推荐的方法,但在某些情况下,您可能希望将其作为服务运行;更多信息请参考 此页面。
note
除非 TeamCity 支持团队建议您更改,或者您对这些更改的后果绝对有信心,否则请避免更改启动选项。
对于上述提到的两个过程,您可以通过指定系统属性和代理运行的变量来自定义最终的代理行为。
在您运行 <Agent_Home>/bin/agent.bat|sh
脚本之前,请在您的操作系统中设置以下的 环境变量:
TEAMCITY_AGENT_MEM_OPTS
— 设置代理内存 JVM 选项(对于 64 位代理,考虑将-Xmx
设置为 512 MB)TEAMCITY_AGENT_OPTS
— 附加的代理 JVM 选项
在 <Agent_Home>/launcher/conf/wrapper.conf
文件中,添加以下行(每个选项一行):
wrapper.app.parameter.<N>
note
您应该在以下行之前的
wrapper.conf
文件中添加这些额外的行:before。确保对插入这些行后的所有行进行重新编号。
如果 TeamCity 代理进程是由一个 launchd 脚本启动的,您需要修改相应的 .plist
文件来设置环境变量。 以下的 .plist
文件条目将 JVM XMX
参数设置为增加构建代理的最大内存分配池至 512 MB。
<key>EnvironmentVariables</key>
<dict>
<key>TEAMCITY_AGENT_MEM_OPTS</key>
<string>-Xmx512m</string>
</dict>
只有极少数情况可能需要更改 agent launcher 的属性。 在修改这些之前,请确保您的问题不能通过更改主代理进程属性来解决,这些属性在 上文 中已经描述过。
在您运行 <Agent_Home>/bin/agent.bat|sh
脚本之前,设置 TEAMCITY_LAUNCHER_OPTS
环境变量。
在 <Agent_Home>/launcher/conf/wrapper.conf
文件中,添加以下行(每个选项一行, N
数字应递增):
wrapper.java.additional.<N>
note
确保对插入这些行后的所有行进行重新编号。
感谢您的反馈!