Skip to content

Bug: PostgreSQL Docker Compose template passes invalid DB value to Temporal server #72

Description

@incidunt

Description

When generating a project with PostgreSQL enabled and running:

docker compose up

Temporal fails to start with:

Unsupported driver specified: 'DB=postgresql'.
Valid drivers are: mysql8, postgres12, postgres12_pgx, cassandra

Location

Template file:

template/docker-compose.yml.jinja

Around line 91:

DB: postgresql

(or equivalent generated environment variable)

Source:

Root Cause

The Temporal auto-setup image does not accept postgresql as a valid database driver value.

Supported values are:

  • postgres12
  • postgres12_pgx
  • mysql8
  • cassandra

As documented in the official Temporal Docker Compose example:

https://github.com/temporalio/samples-server/blob/ca1106b647c34323876bd6f221f4310271096dd8/compose/docker-compose-postgres.yml#L49

which uses:

DB: postgres12

Steps to Reproduce

  1. Generate a new Django Keel project with PostgreSQL enabled.
  2. Run:
docker compose up
  1. Observe Temporal startup failure:
Unsupported driver specified: 'DB=postgresql'
Valid drivers are: mysql8, postgres12, postgres12_pgx, cassandra

Expected Behavior

Temporal should start successfully using PostgreSQL.

Suggested Fix

Replace:

DB: postgresql

with:

DB: postgres12

(or postgres12_pgx if pgx is preferred)

to match Temporal's supported driver names.

Additional Context

The generated Django configuration correctly uses postgresql, but Temporal's Docker image expects a different identifier for the database backend. This causes the generated Docker Compose stack to fail immediately on first startup.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions