TeamCity 8.0 Help

Configuring TeamCity Server Startup Properties

Various aspects of TeamCity behavior can be customized through a set options passed on a 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 in the UI and are meant for debug use only. If you need to set such a property (e.g. asked by TeamCity support), add it to the <TeamCity Data Directory>/config/internal.properties file. The file is a Java properties file. Create the file and add a required property <property name> = <property value> on a separate line.

Once you create the file, you can edit internal properties in the TeamCity web UI: go to the Administration | Server Administration | Diagnostics page, select the Internal Properties tab and click Edit internal properties.

An alternative way to add an internal property is to pass it as a -D<name>=<value> JVM option (see below)

JVM Options

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 are using the .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 OS environment variables passed to the TeamCity server process:

  • 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 the user whose account is used to run TeamCity. You might need to reboot the machine after the environment change for the changes to have effect.

TeamCity Server is Run as Windows Service

Set environment variables as described in Server-is-Run-Via-Shell-Script to affect TeamCity which is run as a service.

Last modified: 20 April 2023