Integrating TeamCity with Docker
For TeamCity 2017.1.x Docker Support is available as a separate plugin supporting build agents on Mac and Linux. See the related blog-post.
TeamCity 2017.2 comes with built-in Docker support. If you installed the plugin for the previous version manually, please remove it.
Supported Environments
For TeamCity 2017.2.x 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.
Parameters Reported by Agent
During the build, the build agent reports the following parameters:
Parameter | Description |
---|---|
| The Docker Engine version |
| The Docker Compose file version if the Docker Compose build step is used |
| The Docker server OS type, can have the |
If you are using the Command Line Build step (and not the TeamCity-provided docker steps), these parameters can be used as agent requirements to ensure your build is run only on the agents with Docker installed.
Features
TeamСity-Docker integration provides the following features which facilitate working with Docker under TeamCity:
Docker Support Build Feature
Docker Connection for a Project
Docker Build Runner
Docker Compose Runner
Docker Wrapper
TeamCity provides the Docker Wrapper extension for Command Line, Maven, Ant, and Gradle runners. Each of the supported runners has the dedicated Docker settings section.
Docker Settings
Docker Disk Space Cleaner
When there is not enough disk space on the agent at the beginning of the build, the docker system prune -a
command will be run cleaning the local Docker Caches. The command is run only as the last resort if all other cleaners did not manage to free enough space. Docker Disk Space Cleaner is an extension to the Free Disk Space build feature ensuring a certain amount of disk space for a build.