How to handle super slow server restarts in dev environment

I'm getting started with TeamCity plugin development.  I'm completely new to TC (though I have exp writing Jenkins plugins), and I've been following this document:

I'm wondering if there's any best practices for running the teamcity server locally for dev environments.  I'm running the docker version of teamcity as follows:

docker run -it --name teamcity-server-instance \
-v $(pwd)/data:/data/teamcity_server/datadir \
-v $(pwd)/logs:/opt/teamcity/logs \
-p 8111:8111 \


This works fine, except the server is VERY slow to restart (5-10 minutes).  With the exception of the first time I install the plugin, every update requires that I manually upload the zip and perform a restart.  I'm doing this a lot and the process has been excruciating.  Is there a better way to see changes reflected on my TC server?  I should probably try running TC locally outside of docker to see if that's faster, but I really like the flexibility that docker gives me, and would prefer to use it if possible.  My dev environment is MacOS Mojave.


1 comment

Hi, consider using TeamCity SDK Maven plugin (

It supports reloading the plugin without restarting the TeamCity Server, which should save a lot of time



Please sign in to leave a comment.