TeamCity-Docker integration includes the Docker Compose runner.
TeamCity-Docker support can run on Mac, Linux, and Windows build agents. It uses the
docker executable on the build agent machine, so it should be runnable by the build agent user.
Since version 2018.2, TeamCity has switched from Oracle Java to OpenJDK 8 (by AdoptOpenJDK). All Docker images have been updated to support OpenJDK.
The runner allows starting Docker Compose build services and shutting down those services at the end of the build.
The Docker Compose runner supports one or several Docker Compose YAML file(s) with a description of the services to be used during the build. The path to the docker-compose.yml file(s) should be relative to the checkout directory. When specifying several files, separate them with a space.
The executed commands are:
If the checkbox pull image explicitly is enabled,
docker-compose pull will be run before the
docker-compose up command.
When using Docker Compose with images which support HEALTHCHECK, TeamCity will wait for the
healthy status of all containers, which support this parameter.
If the start of Docker Compose was successful, the TeamCity agent will register the TEAMCITY_DOCKER_NETWORK environment variable containing the name of the Docker Compose default network. This network will be passed transparently to the Docker Wrapper when used in some build runners.