TeamCity 2019.1 Help

Docker

TeamCity comes with built-in Docker integration, which includes the Docker runner (formerly Docker Build), a runner for Docker commands.

Requirements

The integration requires Docker installed on the build agents. Docker Compose also needs to be installed to use the Docker Compose build runner.

Supported Environments

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 Docker runner supports the build, push, tag Docker commands.

When creating TeamCity projects/ build configurations from a repository URL, the runner is offered as build step during auto-detection, provided a Dockerfile is present in the VCS repository.

Docker Command

Here is the list of the Docker commands. Depending on the selected command, the settings below will vary.

Command

Parameter

Description

build

Dockerfile source

Depending on the selected source, the settings below will vary. The available options include File, a URL or File content.

Path to file

Available if File is selected as the source. Specify the path to the Docker file. The path should be relative to the checkout directory.

Context folder

Available if File is selected as the source. Specify the context for the docker build. If blank, the enclosing folder for Dockerfile will be used.

URL to file

Available if URL is selected as the source. The URL can refer to three kinds of resources: Git repositories, pre-packaged tarball contexts, and plain text files. See Docker documentation for details.

File Content:

Available if the file cis selected as the source. You can enter the content of the Dockerfile into the field.

Image platform

Select <Any> (default), Linux or Windows.

Image name:tag

Provide a newline-separated list of image name:tag(s)

Additional arguments for 'build' command

Supply additional arguments to the docker build command. See Docker documentation for details.

push

Remove image from agent after push

If selected, TeamCity will remove the image with docker rmi at the end of the step

Image name:tag

Provide a newline-separated list of image name:tag(s)

other

Command name

Docker sub-command, like push or tag. For run, use Docker Wrapper

Working directory

Additional arguments for the command

Additional arguments that will be passed to the docker command.