Releases: camunda/camunda-distributions
Release list
docker-compose-8.8
Camunda 8 Self-Managed - Docker Compose
Usage
For end user usage, please check the official documentation of Camunda 8 Self-Managed Docker Compose.
Application configuration
Camunda services read their application settings from YAML mounted by Docker Compose:
- The lightweight
docker-compose.yamlkeeps its Orchestration and Connectors YAML inline underconfigs, preserving the single-file setup. - The full and standalone setups share component files under
.identity/and.web-modeler/. The standalone-only Identity overlay remains inline indocker-compose-web-modeler.yaml. - The full setup additionally uses
.orchestration/application.yaml,.connectors/application.yaml, and the files under.optimize/. Web Modeler cluster registrations are isolated in.web-modeler/application-full.yaml.
The mounted files reference values from .env with ${VARIABLE:default} placeholders. Keep environment-specific endpoints and secrets in .env; direct Spring environment variables can still override file values. PostgreSQL, Keycloak, Elasticsearch, Web Modeler WebSockets, the separate Web Modeler webapp, and Console continue to use their native environment-based configuration.
Enabling multi-tenancy
Lightweight configuration
The lightweight docker-compose.yaml runs with basic authentication and an unprotected API. To enable multi-tenancy, protect the API and switch on the tenancy checks by creating a docker-compose.override.yaml next to the compose file:
services:
orchestration:
environment:
- CAMUNDA_SECURITY_AUTHENTICATION_UNPROTECTEDAPI=false
- CAMUNDA_SECURITY_MULTITENANCY_CHECKSENABLED=true
- CAMUNDA_SECURITY_MULTITENANCY_APIENABLED=true
connectors:
environment:
- CAMUNDA_CLIENT_AUTH_METHOD=basic
- CAMUNDA_CLIENT_AUTH_USERNAME=demo
- CAMUNDA_CLIENT_AUTH_PASSWORD=demoThen start the stack with docker compose up -d and manage tenants through the Orchestration Cluster API (or the Identity UI at http://localhost:8088/identity):
# create a tenant
curl -u demo:demo -X POST http://localhost:8088/v2/tenants \
-H 'Content-Type: application/json' -d '{"tenantId": "tenant-a", "name": "Tenant A"}'
# assign the demo user to it
curl -u demo:demo -X PUT http://localhost:8088/v2/tenants/tenant-a/users/demoAPI clients must authenticate with basic auth once the API is protected (camunda.client.auth.method=basic plus username and password in the Camunda client SDKs).
Full configuration
The full docker-compose-full.yaml already protects the API through Keycloak, so only the tenancy checks need to be switched on. Add the following to .env:
CAMUNDA_SECURITY_MULTITENANCY_CHECKSENABLED=true
CAMUNDA_SECURITY_MULTITENANCY_APIENABLED=trueThen start the stack with docker compose -f docker-compose-full.yaml up -d and manage tenants through the Orchestration Cluster API with an OAuth token (or the Identity UI at http://localhost:8088/identity):
TOKEN=$(curl -s -X POST 'http://localhost:18080/auth/realms/camunda-platform/protocol/openid-connect/token' \
-d 'grant_type=client_credentials' -d 'client_id=orchestration' -d 'client_secret=secret' | jq -r .access_token)
# create a tenant
curl -X POST http://localhost:8088/v2/tenants -H "Authorization: Bearer $TOKEN" \
-H 'Content-Type: application/json' -d '{"tenantId": "tenant-a", "name": "Tenant A"}'
# assign the demo user to it
curl -X PUT http://localhost:8088/v2/tenants/tenant-a/users/demo -H "Authorization: Bearer $TOKEN"Versions
- CAMUNDA_VERSION=8.8.36
- CAMUNDA_CONNECTORS_VERSION=8.8.17
- CAMUNDA_IDENTITY_VERSION=8.8.16
- CAMUNDA_OPERATE_VERSION=8.8.36
- CAMUNDA_TASKLIST_VERSION=8.8.36
- CAMUNDA_OPTIMIZE_VERSION=8.8.36
- CAMUNDA_WEB_MODELER_VERSION=8.8.18
- CAMUNDA_CONSOLE_VERSION=8.8.140
- ELASTIC_VERSION=8.17.10
- KEYCLOAK_SERVER_VERSION=quay-26.6.4
- MAILPIT_VERSION=v1.21.8
- POSTGRES_VERSION=15-alpine3.22
Verification
To verify the integrity of the artifact using Cosign:
# Download Docker Compose artifact.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.8/docker-compose-8.8.zip
# Download Docker Compose Cosign bundle.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.8/docker-compose-8.8.cosign.bundle
# Verify with cosign.
cosign verify-blob docker-compose-8.8.zip \
--bundle docker-compose-8.8.cosign.bundle \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
--certificate-identity "https://github.com/camunda/camunda-distributions/.github/workflows/docker-compose-release-template.yaml@refs/heads/main"Notes
- Release strategy: Camunda Docker Compose release is a rolling release. Hence, it's always 1 artifact per Camunda minor version.
- Latest update: Mon Aug 24 10:39:59 UTC 2026
docker-compose-8.10
Camunda 8 Self-Managed - Docker Compose
Usage
For end user usage, please check the official documentation of Camunda 8 Self-Managed Docker Compose.
Application configuration
Camunda services read their application settings from YAML mounted by Docker Compose:
- The lightweight
docker-compose.yamlkeeps its Connectors YAML inline underconfigs, preserving the compact setup. Orchestration mounts the selected file fromconfiguration/. - The full and standalone setups share component files under
.identity/and.web-modeler/. The standalone-only Identity overlay remains inline indocker-compose-web-modeler.yaml. - The full setup additionally uses
.orchestration/application.yaml,.connectors/application.yaml, and the files under.optimize/. Hub cluster registrations are isolated in.web-modeler/application-full.yaml.
The mounted files reference runtime values from .env with ${VARIABLE:default} placeholders. Keep environment-specific endpoints and secrets in .env; direct Spring environment variables can still override file values. Hub database and Pusher credentials remain direct environment variables, matching the Helm deployment. PostgreSQL, Keycloak, Hub WebSockets, and other non-Spring services continue to use their native environment-based configuration.
Elasticsearch
docker-compose.yamluses the default H2 secondary storage and does not start Elasticsearch.docker-compose-full.yamlstarts Elasticsearch as theelasticsearchservice, which Optimize and the Orchestration Cluster exporter use.- To use an externally managed instance instead, point
ELASTICSEARCH_URL,ELASTICSEARCH_HOST,ELASTICSEARCH_PORT, andELASTICSEARCH_CLUSTER_NAMEin.envat that endpoint and remove theelasticsearchservice.
Example:
cd docker-compose/versions/camunda-8.10
docker compose -f docker-compose-full.yaml up -dSwitching secondary storage databases
The Orchestration container now mounts configuration/<file>.yaml into /usr/local/camunda/config/application.yaml.
Set ORCHESTRATION_CONFIG_FILE in .env (or export it before running docker compose) to one of the provided samples:
application-h2.yaml(default, file-based H2)application-mysql.yamlapplication-mariadb.yamlapplication-postgresql.yamlapplication-mssql.yamlapplication-oracle.yamlapplication-opensearch.yaml
Feel free to copy these files and adjust the JDBC URL/credentials for your environment. Example:
cd docker-compose/versions/camunda-8.10
export ORCHESTRATION_CONFIG_FILE=application-mysql.yaml
docker compose up -dThe application-opensearch.yaml sample expects an OpenSearch instance reachable at http://opensearch:9200. OpenSearch is not bundled, so either point the URL at an existing instance or add one via a docker-compose.override.yaml on the same network — see configure secondary storage with Docker Compose for a ready-made example.
JDBC drivers
The Camunda Docker image automatically loads any .jar dropped into /driver-lib. A writable driver-lib/ folder is included next to the compose file so you can copy the vendor JDBC driver there before starting (e.g., driver-lib/mysql-connector-j-9.0.0.jar). This is required for MySQL and Oracle. PostgreSQL, MariaDB, SQL Server, and H2 drivers are already bundled in the image — see supported JDBC driver versions for the authoritative list.
Enabling multi-tenancy
Lightweight configuration
The lightweight docker-compose.yaml runs with basic authentication and an unprotected API. To enable multi-tenancy, protect the API and switch on the tenancy checks by creating a docker-compose.override.yaml next to the compose file:
services:
orchestration:
environment:
- CAMUNDA_SECURITY_AUTHENTICATION_UNPROTECTEDAPI=false
- CAMUNDA_SECURITY_MULTITENANCY_CHECKSENABLED=true
- CAMUNDA_SECURITY_MULTITENANCY_APIENABLED=true
connectors:
environment:
- CAMUNDA_CLIENT_AUTH_METHOD=basic
- CAMUNDA_CLIENT_AUTH_USERNAME=demo
- CAMUNDA_CLIENT_AUTH_PASSWORD=demoThen start the stack with docker compose up -d and manage tenants through the Orchestration Cluster API (or the Orchestration Cluster Admin UI at http://localhost:8080/admin):
# create a tenant
curl -u demo:demo -X POST http://localhost:8080/v2/tenants \
-H 'Content-Type: application/json' -d '{"tenantId": "tenant-a", "name": "Tenant A"}'
# assign the demo user to it
curl -u demo:demo -X PUT http://localhost:8080/v2/tenants/tenant-a/users/demoAPI clients must authenticate with basic auth once the API is protected (camunda.client.auth.method=basic plus username and password in the Camunda client SDKs).
Full configuration
The full docker-compose-full.yaml already protects the API through Keycloak, so only the tenancy checks need to be switched on. Add the following to .env:
CAMUNDA_SECURITY_MULTITENANCY_CHECKSENABLED=true
CAMUNDA_SECURITY_MULTITENANCY_APIENABLED=trueThen start the stack with docker compose -f docker-compose-full.yaml up -d and manage tenants through the Orchestration Cluster API with an OAuth token (or the Orchestration Cluster Admin UI at http://localhost:8080/admin):
TOKEN=$(curl -s -X POST 'http://localhost:18080/auth/realms/camunda-platform/protocol/openid-connect/token' \
-d 'grant_type=client_credentials' -d 'client_id=orchestration' -d 'client_secret=secret' | jq -r .access_token)
# create a tenant
curl -X POST http://localhost:8080/v2/tenants -H "Authorization: Bearer $TOKEN" \
-H 'Content-Type: application/json' -d '{"tenantId": "tenant-a", "name": "Tenant A"}'
# assign the demo user to it
curl -X PUT http://localhost:8080/v2/tenants/tenant-a/users/demo -H "Authorization: Bearer $TOKEN"Versions
- CAMUNDA_VERSION=8.10-SNAPSHOT
- CAMUNDA_CONNECTORS_VERSION=8.10-SNAPSHOT
- CAMUNDA_IDENTITY_VERSION=8.9.8
- CAMUNDA_OPERATE_VERSION=8.10-SNAPSHOT
- CAMUNDA_TASKLIST_VERSION=8.10-SNAPSHOT
- CAMUNDA_OPTIMIZE_VERSION=8.10-SNAPSHOT
- CAMUNDA_WEB_MODELER_VERSION=8.10.0-alpha5-rc1
- CAMUNDA_CONSOLE_VERSION=8.10-SNAPSHOT
- ELASTIC_VERSION=8.19.20
- KEYCLOAK_SERVER_VERSION=quay-26.6.4
- MAILPIT_VERSION=v1.21.8
- POSTGRES_VERSION=15-alpine3.22
Verification
To verify the integrity of the artifact using Cosign:
# Download Docker Compose artifact.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.10/docker-compose-8.10.zip
# Download Docker Compose Cosign bundle.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.10/docker-compose-8.10.cosign.bundle
# Verify with cosign.
cosign verify-blob docker-compose-8.10.zip \
--bundle docker-compose-8.10.cosign.bundle \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
--certificate-identity "https://github.com/camunda/camunda-distributions/.github/workflows/docker-compose-release-template.yaml@refs/heads/main"Notes
- Release strategy: Camunda Docker Compose release is a rolling release. Hence, it's always 1 artifact per Camunda minor version.
- Latest update: Mon Aug 24 10:33:39 UTC 2026
docker-compose-8.9
Camunda 8 Self-Managed - Docker Compose
Usage
For end user usage, please check the official documentation of Camunda 8 Self-Managed Docker Compose.
Application configuration
Camunda services read their application settings from YAML mounted by Docker Compose:
- The lightweight
docker-compose.yamlkeeps its Connectors YAML inline underconfigs, preserving the compact setup. Orchestration mounts the selected file fromconfiguration/. - The full and standalone setups share component files under
.identity/and.web-modeler/. The standalone-only Identity overlay remains inline indocker-compose-web-modeler.yaml. - The full setup additionally uses
.orchestration/application.yaml,.connectors/application.yaml, and the files under.optimize/. Web Modeler cluster registrations are isolated in.web-modeler/application-full.yaml.
The mounted files reference values from .env with ${VARIABLE:default} placeholders. Keep environment-specific endpoints and secrets in .env; direct Spring environment variables can still override file values. PostgreSQL, Keycloak, Elasticsearch, Web Modeler WebSockets, Console, and other non-Spring services continue to use their native environment-based configuration.
Switching secondary storage databases
The Orchestration container mounts configuration/<file>.yaml into /usr/local/camunda/config/application.yaml.
Set ORCHESTRATION_CONFIG_FILE in .env (or export it before running docker compose) to one of the provided samples:
application-h2.yaml(default, file-based H2)application-mysql.yamlapplication-mariadb.yamlapplication-postgresql.yamlapplication-mssql.yamlapplication-oracle.yamlapplication-opensearch.yaml
Feel free to copy these files and adjust the JDBC URL/credentials for your environment. Example:
cd docker-compose/versions/camunda-8.9
export ORCHESTRATION_CONFIG_FILE=application-mysql.yaml
docker compose up -dThe application-opensearch.yaml sample expects an OpenSearch instance reachable at http://opensearch:9200. OpenSearch is not bundled, so either point the URL at an existing instance or add one via a docker-compose.override.yaml on the same network — see configure secondary storage with Docker Compose for a ready-made example.
JDBC drivers
The Camunda Docker image automatically loads any .jar dropped into /driver-lib. A writable driver-lib/ folder is included next to the compose file so you can copy the vendor JDBC driver there before starting (e.g., driver-lib/mysql-connector-j-9.0.0.jar). This is required for MySQL and Oracle. PostgreSQL, MariaDB, SQL Server, and H2 drivers are already bundled in the image — see supported JDBC driver versions for the authoritative list.
Enabling multi-tenancy
Lightweight configuration
The lightweight docker-compose.yaml runs with basic authentication and an unprotected API. To enable multi-tenancy, protect the API and switch on the tenancy checks by creating a docker-compose.override.yaml next to the compose file:
services:
orchestration:
environment:
- CAMUNDA_SECURITY_AUTHENTICATION_UNPROTECTEDAPI=false
- CAMUNDA_SECURITY_MULTITENANCY_CHECKSENABLED=true
- CAMUNDA_SECURITY_MULTITENANCY_APIENABLED=true
connectors:
environment:
- CAMUNDA_CLIENT_AUTH_METHOD=basic
- CAMUNDA_CLIENT_AUTH_USERNAME=demo
- CAMUNDA_CLIENT_AUTH_PASSWORD=demoThen start the stack with docker compose up -d and manage tenants through the Orchestration Cluster API (or the Orchestration Cluster Admin UI at http://localhost:8080/admin):
# create a tenant
curl -u demo:demo -X POST http://localhost:8080/v2/tenants \
-H 'Content-Type: application/json' -d '{"tenantId": "tenant-a", "name": "Tenant A"}'
# assign the demo user to it
curl -u demo:demo -X PUT http://localhost:8080/v2/tenants/tenant-a/users/demoAPI clients must authenticate with basic auth once the API is protected (camunda.client.auth.method=basic plus username and password in the Camunda client SDKs).
Full configuration
The full docker-compose-full.yaml already protects the API through Keycloak, so only the tenancy checks need to be switched on. Add the following to .env:
CAMUNDA_SECURITY_MULTITENANCY_CHECKSENABLED=true
CAMUNDA_SECURITY_MULTITENANCY_APIENABLED=trueThen start the stack with docker compose -f docker-compose-full.yaml up -d and manage tenants through the Orchestration Cluster API with an OAuth token (or the Orchestration Cluster Admin UI at http://localhost:8080/admin):
TOKEN=$(curl -s -X POST 'http://localhost:18080/auth/realms/camunda-platform/protocol/openid-connect/token' \
-d 'grant_type=client_credentials' -d 'client_id=orchestration' -d 'client_secret=secret' | jq -r .access_token)
# create a tenant
curl -X POST http://localhost:8080/v2/tenants -H "Authorization: Bearer $TOKEN" \
-H 'Content-Type: application/json' -d '{"tenantId": "tenant-a", "name": "Tenant A"}'
# assign the demo user to it
curl -X PUT http://localhost:8080/v2/tenants/tenant-a/users/demo -H "Authorization: Bearer $TOKEN"Versions
- CAMUNDA_VERSION=8.9.17
- CAMUNDA_CONNECTORS_VERSION=8.9.8
- CAMUNDA_IDENTITY_VERSION=8.9.8
- CAMUNDA_OPERATE_VERSION=8.9.11
- CAMUNDA_TASKLIST_VERSION=8.9.11
- CAMUNDA_OPTIMIZE_VERSION=8.9.17
- CAMUNDA_WEB_MODELER_VERSION=8.9.7
- CAMUNDA_CONSOLE_VERSION=8.9.88
- ELASTIC_VERSION=8.19.11
- KEYCLOAK_SERVER_VERSION=quay-26.6.4
- MAILPIT_VERSION=v1.21.8
- POSTGRES_VERSION=15-alpine3.22
Verification
To verify the integrity of the artifact using Cosign:
# Download Docker Compose artifact.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.9/docker-compose-8.9.zip
# Download Docker Compose Cosign bundle.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.9/docker-compose-8.9.cosign.bundle
# Verify with cosign.
cosign verify-blob docker-compose-8.9.zip \
--bundle docker-compose-8.9.cosign.bundle \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
--certificate-identity "https://github.com/camunda/camunda-distributions/.github/workflows/docker-compose-release-template.yaml@refs/heads/main"Notes
- Release strategy: Camunda Docker Compose release is a rolling release. Hence, it's always 1 artifact per Camunda minor version.
- Latest update: Fri Aug 21 14:35:02 UTC 2026
docker-compose-8.7
Camunda 8 Self-Managed - Docker Compose
Usage
For end user usage, please check the offical documentation of Camunda 8 Self-Managed Docker Compose.
Enabling multi-tenancy
Multi-tenancy requires Zeebe to authenticate through Identity. Set the following in .env:
ZEEBE_AUTHENTICATION_MODE=identity
MULTI_TENANCY_ENABLED=trueThen start the stack with docker compose up -d and manage tenants in the Identity UI at http://localhost:8084 (log in as demo/demo), or through the Identity API:
# create a tenant (token from the camunda-identity client, e.g. via password grant for the demo user)
curl -X POST http://localhost:8084/api/tenants -H "Authorization: Bearer $TOKEN" \
-H 'Content-Type: application/json' -d '{"tenantId": "tenant-a", "name": "Tenant A"}'API clients must use OAuth client credentials (e.g. the zeebe client from .env) once authentication is enabled.
Versions
- CAMUNDA_CONNECTORS_VERSION=8.7.23
- CAMUNDA_ZEEBE_VERSION=8.7.37
- CAMUNDA_IDENTITY_VERSION=8.7.23
- CAMUNDA_OPERATE_VERSION=8.7.37
- CAMUNDA_TASKLIST_VERSION=8.7.37
- CAMUNDA_OPTIMIZE_VERSION=8.7.26
- CAMUNDA_WEB_MODELER_VERSION=8.7.25
- ELASTIC_VERSION=8.17.10
- KEYCLOAK_SERVER_VERSION=quay-26.6.4
- MAILPIT_VERSION=v1.21.8
- POSTGRES_VERSION=14.5-alpine
Verification
To verify the integrity of the artifact using Cosign:
# Download Docker Compose artifact.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.7/docker-compose-8.7.zip
# Download Docker Compose Cosign bundle.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.7/docker-compose-8.7.cosign.bundle
# Verify with cosign.
cosign verify-blob docker-compose-8.7.zip \
--bundle docker-compose-8.7.cosign.bundle \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
--certificate-identity "https://github.com/camunda/camunda-distributions/.github/workflows/docker-compose-release-template.yaml@refs/heads/main"Notes
- Release strategy: Camunda Docker Compose release is a rolling release. Hence, it's always 1 artifact per Camunda minor version.
- Latest update: Mon Aug 17 18:01:04 UTC 2026
docker-compose-8.6
Camunda 8 Self-Managed - Docker Compose
Usage
For end user usage, please check the offical documentation of Camunda 8 Self-Managed Docker Compose.
Versions
- CAMUNDA_CONNECTORS_VERSION=8.6.27
- CAMUNDA_ZEEBE_VERSION=8.6.39
- CAMUNDA_IDENTITY_VERSION=8.6.30
- CAMUNDA_OPERATE_VERSION=8.6.39
- CAMUNDA_TASKLIST_VERSION=8.6.39
- CAMUNDA_OPTIMIZE_VERSION=8.6.26
- CAMUNDA_WEB_MODELER_VERSION=8.6.27
- ELASTIC_VERSION=8.15.5
- KEYCLOAK_SERVER_VERSION=24.0.5
- MAILPIT_VERSION=v1.20.7
- POSTGRES_VERSION=14.5-alpine
Verification
To verify the integrity of the artifact using Cosign:
# Download Docker Compose artifact.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.6/docker-compose-8.6.zip
# Download Docker Compose Cosign bundle.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.6/docker-compose-8.6.cosign.bundle
# Verify with cosign.
cosign verify-blob docker-compose-8.6.zip \
--bundle docker-compose-8.6.cosign.bundle \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
--certificate-identity "https://github.com/camunda/camunda-distributions/.github/workflows/docker-compose-release-template.yaml@refs/heads/main"Notes
- Release strategy: Camunda Docker Compose release is a rolling release. Hence, it's always 1 artifact per Camunda minor version.
- Latest update: Thu Jun 11 10:22:03 UTC 2026
docker-compose-8.5
Camunda 8 Self-Managed - Docker Compose
Usage
For end user usage, please check the offical documentation of Camunda 8 Self-Managed Docker Compose.
Versions
- CAMUNDA_CONNECTORS_VERSION=8.5.22
- CAMUNDA_PLATFORM_VERSION=8.5.25
- CAMUNDA_IDENTITY_VERSION=8.5.22
- CAMUNDA_OPERATE_VERSION=8.5.22
- CAMUNDA_TASKLIST_VERSION=8.5.24
- CAMUNDA_OPTIMIZE_VERSION=8.5.20
- CAMUNDA_WEB_MODELER_VERSION=8.5.23
- ELASTIC_VERSION=8.14.3
- KEYCLOAK_SERVER_VERSION=21.1.2
- MAILPIT_VERSION=v1.18.7
- POSTGRES_VERSION=14.5-alpine
Verification
To verify the integrity of the artifact using Cosign:
# Download Docker Compose artifact.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.5/docker-compose-8.5.zip
# Download Docker Compose Cosign bundle.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.5/docker-compose-8.5.cosign.bundle
# Verify with cosign.
cosign verify-blob docker-compose-8.5.zip \
--bundle docker-compose-8.5.cosign.bundle \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
--certificate-identity "https://github.com/camunda/camunda-distributions/.github/workflows/docker-compose-release-template.yaml@refs/heads/main"Notes
- Release strategy: Camunda Docker Compose release is a rolling release. Hence, it's always 1 artifact per Camunda minor version.
- Latest update: Thu Jun 11 10:21:39 UTC 2026
docker-compose-8.4
Camunda 8 Self-Managed - Docker Compose
Usage
For end user usage, please check the offical documentation of Camunda 8 Self-Managed Docker Compose.
Versions
- CAMUNDA_CONNECTORS_VERSION=8.4.21
- CAMUNDA_PLATFORM_VERSION=8.4.21
- CAMUNDA_IDENTITY_VERSION=8.4.23
- CAMUNDA_OPERATE_VERSION=8.4.22
- CAMUNDA_TASKLIST_VERSION=8.4.23
- CAMUNDA_OPTIMIZE_VERSION=8.4.20
- CAMUNDA_WEB_MODELER_VERSION=8.4.19
- ELASTIC_VERSION=8.12.2
- KEYCLOAK_SERVER_VERSION=21.1.2
- MAILPIT_VERSION=v1.9.9
- POSTGRES_VERSION=14.5-alpine
Verification
To verify the integrity of the artifact using Cosign:
# Download Docker Compose artifact.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.4/docker-compose-8.4.zip
# Download Docker Compose Cosign bundle.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.4/docker-compose-8.4.cosign.bundle
# Verify with cosign.
cosign verify-blob docker-compose-8.4.zip \
--bundle docker-compose-8.4.cosign.bundle \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
--certificate-identity "https://github.com/camunda/camunda-distributions/.github/workflows/docker-compose-release-template.yaml@refs/heads/main"Notes
- Release strategy: Camunda Docker Compose release is a rolling release. Hence, it's always 1 artifact per Camunda minor version.
- Latest update: Thu Jun 11 10:21:13 UTC 2026
docker-compose-8.3
Camunda 8 Self-Managed - Docker Compose
Usage
For end user usage, please check the offical documentation of Camunda 8 Self-Managed Docker Compose.
Versions
- CAMUNDA_CONNECTORS_VERSION=8.3.23
- CAMUNDA_PLATFORM_VERSION=8.3.15
- CAMUNDA_OPTIMIZE_VERSION=8.3.21
- CAMUNDA_WEB_MODELER_VERSION=8.3.18
- ELASTIC_VERSION=8.8.2
- KEYCLOAK_SERVER_VERSION=21.1.2
- MAILPIT_VERSION=v1.9.9
- POSTGRES_VERSION=14.5-alpine
Verification
To verify the integrity of the artifact using Cosign:
# Download Docker Compose artifact.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.3/docker-compose-8.3.zip
# Download Docker Compose Cosign bundle.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-8.3/docker-compose-8.3.cosign.bundle
# Verify with cosign.
cosign verify-blob docker-compose-8.3.zip \
--bundle docker-compose-8.3.cosign.bundle \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
--certificate-identity "https://github.com/camunda/camunda-distributions/.github/workflows/docker-compose-release-template.yaml@refs/heads/main"Notes
- Release strategy: Camunda Docker Compose release is a rolling release. Hence, it's always 1 artifact per Camunda minor version.
- Latest update: Wed Apr 30 12:16:04 UTC 2025
docker-compose-alpha
Camunda 8 Self-Managed - Docker Compose
Usage
For end user usage, please check the offical documentation of Camunda 8 Self-Managed Docker Compose.
Versions
- CAMUNDA_CONNECTORS_VERSION=8.7.0-alpha5
- CAMUNDA_ZEEBE_VERSION=8.7.0
- CAMUNDA_IDENTITY_VERSION=8.7.0
- CAMUNDA_OPERATE_VERSION=8.7.0
- CAMUNDA_TASKLIST_VERSION=8.7.0
- CAMUNDA_OPTIMIZE_VERSION=8.7.0-alpha5
- CAMUNDA_WEB_MODELER_VERSION=8.7.0
- ELASTIC_VERSION=8.17.1
- KEYCLOAK_SERVER_VERSION=24.0.5
- MAILPIT_VERSION=v1.21.8
- POSTGRES_VERSION=14.5-alpine
Verification
To verify the integrity of the artifact using Cosign:
# Download Docker Compose artifact.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-alpha/docker-compose-alpha.zip
# Download Docker Compose Cosign bundle.
curl -LO https://github.com/camunda/camunda-distributions/releases/download/docker-compose-alpha/docker-compose-alpha.cosign.bundle
# Verify with cosign.
cosign verify-blob docker-compose-alpha.zip \
--bundle docker-compose-alpha.cosign.bundle \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
--certificate-identity "https://github.com/camunda/camunda-distributions/.github/workflows/docker-compose-release-template.yaml@refs/heads/main"Notes
- Release strategy: Camunda Docker Compose release is a rolling release. Hence, it's always 1 artifact per Camunda minor version.
- Latest update: Tue Apr 1 20:04:08 UTC 2025
docker-compose-idp-8.7-alpha5-idp-enabled
Camunda 8 Self-Managed - Docker Compose
Usage
For end user usage, please check the offical documentation of Camunda 8 Self-Managed Docker Compose.
This version is enabled for Intelligent document processing.
Please follow this link for documentation on how to configure.
Versions
- CAMUNDA_CONNECTORS_VERSION=8.7.0-SNAPSHOT
- CAMUNDA_ZEEBE_VERSION=8.7.0-alpha5
- CAMUNDA_IDENTITY_VERSION=8.7.0-alpha5
- CAMUNDA_OPERATE_VERSION=8.7.0-alpha5
- CAMUNDA_TASKLIST_VERSION=8.7.0-alpha5
- CAMUNDA_OPTIMIZE_VERSION=8.7.0-alpha5
- CAMUNDA_WEB_MODELER_VERSION=SNAPSHOT
- ELASTIC_VERSION=8.17.1
- KEYCLOAK_SERVER_VERSION=24.0.5
- MAILPIT_VERSION=v1.21.8
- POSTGRES_VERSION=14.5-alpine