TeamCity 7.0 Help

Configuring TeamCity Server Startup Properties

Various aspects of TeamCity behavior can be customized through a set options passed on TeamCity server start. These options fall into two categories: affecting Java Virtual Machine (JVM) and affecting TeamCity behavior.

TeamCity internal properties internal.properties

TeamCity has some properties that are not exposed to UI and are meant for debug use only. If you need to set such a property (e.g. asked by TeamCity support), you can set it either as -D<name>=<value> JVM property (see below), or you can add TeamCity-specific properties in <TeamCity Data Directory>/config/internal.properties file. The file is Java properties file, to add property put <property name> = <property value> on a separate line. If you do not have the file, just create a new one.

JVM Properties

If you need to pass additional JVM options to a TeamCity server (e.g. -D options mentioned at Reporting Issues or any non-"-D" options like -X...), the approach will depend on the way the server is run. If you run the server using Windows service and use TeamCity 7.0 or earlier, please refer to TeamCity-Server-is-Run-as-Windows-Service, if you are using .war distribution, use the manual of your Web Application Server. In all other cases, please refer to Server-is-Run-Via-Shell-Script.

For general notes on the memory settings, please refer to Installing and Configuring the TeamCity Server.

You will need to restart the server for the changes to take effect.

Server is Run Via Shell Script

If you run the server using the runAll or teamcity-server scripts or as a Windows service with TeamCity 7.1 and above, you can set the options via the environment variables:

  • TEAMCITY_SERVER_MEM_OPTS — server JVM memory options (e.g. -Xmx750m -XX:MaxPermSize=270m)

  • TEAMCITY_SERVER_OPTS — additional server JVM options (e.g. -Dteamcity.git.fetch.separate.process=false)

Please make sure the environment variables are set for user you start TeamCity under. You might need to reboot the machine after the environment change for the changes to have effect.

TeamCity Server is Run as Windows Service

TeamCity 7.1

Since TeamCity 7.1 you will need to set environment variables as described in Server-is-Run-Via-Shell-Script to affect TeamCity run as a service.

TeamCity 7.0 and previous versions

For TeamCity 7.0 and previous versions please use the instructions below: To edit JVM server options run Tomcat's service configuration editor by executing the command

tomcat7w.exe //ES//TeamCity

in < TeamCity home >\bin directory and then edit the Java Options on the Java tab (for more information see Tomcat 6 documentation).

To change heap memory dedicated to the JVM change the "Maximum memory pool" setting.

Last modified: 20 April 2023