/teamcity-docker-images

TeamCity docker images

Primary LanguageDockerfile

docker images

Minimal agent (jetbrains/teamcity-minimal-agent)

jetbrains/teamcity-minimal-agent

This minimal image adds just a TeamCity agent without any tools like VCS clients, etc. It is suitable for simple builds and can serve as a base for your custom images.

Agent (jetbrains/teamcity-agent)

jetbrains/teamcity-agent

This image adds a TeamCity agent suitable for Java and .NET development.

Server (jetbrains/teamcity-server)

jetbrains/teamcity-server

To build Docker images that were not provided in docker repositories, you could generate them by yourself

  • Ensure Docker installed.
  • Clone this repository.
  • Download the required TeamCity .tar.gz file. For instance wget -c https://download.jetbrains.com/teamcity/TeamCity-2020.2.3.tar.gz -O - | tar -xz -C context
  • Unpack this file into the directory context/TeamCity within the cloned repository.
  • Generate an image using a coresponding .cmd or .sh script file in generated directory.

To build your custom Docker images or create a pull request

  • Ensure Docker installed.
  • Clone this repository.
  • Download the required TeamCity .tar.gz file. For instance wget -c https://download.jetbrains.com/teamcity/TeamCity-2020.2.3.tar.gz -O - | tar -xz -C context
  • Unpack this file into the directory context/TeamCity within the cloned repository.
  • Apply required changes in the directory configs.
  • Generate docker and readme files by running the generate.sh or generate.cmd script. All generated artifacts will be placed into the directory generated.
  • To add plugins to TeamCity agents run the context.sh or context.cmd script. This is optional as otherwise the TeamCity agents will load plugins by themselves on first launch.
  • Run docker build commands like on this page keeping the proposed order from the root directory of the cloned repository. The proposed order is important because some TeamCity images may be based on other TeamCity images.
  • Check the docker images by running docker-compose up in the directories like checks/windows-local or checks/linux-local.