Skip to content

Deploy Settings

Kim Oliver Drechsel edited this page Aug 3, 2024 · 32 revisions

Deployment Settings

The docker compose deployment can be configured inside the deployment configuration file using the following settings:

Note

Settings without a default value are required.

Key Type Description Default value
name string Name of the deployed project / application.
reference string Git reference to the deployment, e.g. branch refs/heads/main or tag refs/tags/v1.0.0 refs/heads/main
working_dir string The working directory for the deployment. .
compose_files array of strings List of docker-compose and overwrite files to use (in descending order, first file gets read first and following files overwrite previous configs). Unknown files get skipped. [compose.yaml, compose.yml, docker-compose.yml, docker-compose.yaml]
remove_orphans boolean Remove containers for services that are not (or no longer) defined in the Compose file. true
force_recreate boolean Forces the recreation/redeployment of containers even if the configuration has not changed. false
force_image_pull boolean Always pulls the latest version of the image tags you've specified if a newer version is available. false
timeout number The time in seconds to wait for the deployment to finish in seconds before timing out. 300

Build settings

The following settings can be used to build docker images before deployment:

Specify all build settings in a nested build_opts json object in the deployment configuration file.

Key Type Description Default value
force_image_pull boolean Always attempt to pull a newer version of the image false
quiet boolean Quiet suppresses the build output false
args map of strings A map of build-time arguments to pass to the build process null
memory_limit number The maximum amount of memory the build process may consume 0
no_cache boolean Disables the use of the cache when building images false

Deployment configuration file

The deployment configuration file must be placed in the root of your repository and named one of the following:

  • .compose-deploy.yaml
  • .compose-deploy.yml

Example settings usage

With default values

When using the default values, most settings can be omitted.

name: some-project

With custom values

name: some-project
reference: refs/heads/other-branch
working_dir: ./myapp/deployment
compose_files: 
  - prod.compose.yml
  - service-overwrite.yml

With build settings

name: some-project
build_opts:
  force_image_pull: true
  args:
    - BUILD_DATE: 2021-01-01
    - VCS_REF: 123456
  no_cache: true
Clone this wiki locally