Skip to content

fix(postiz): add missing Temporal service required by Postiz v2+ - #784

Closed
chahat1709 wants to merge 3 commits into
Dokploy:canaryfrom
chahat1709:canary
Closed

chahat1709 wants to merge 3 commits into
Dokploy:canaryfrom
chahat1709:canary

Conversation

@chahat1709

@chahat1709 chahat1709 commented Apr 12, 2026 •

Copy link
Copy Markdown

What is this PR about?

Fixes #772
The Postiz template was missing the temporalio/auto-setup service which is required for Postiz v2+. Without Temporal, the app fails to boot and throws ECONNRESET errors.

Changes

  • Added postiz-temporal service using temporalio/auto-setup:latest
    • Configured Temporal with proper PostgreSQL connection
    • Added TEMPORAL_URL and TEMPORAL_WORKER_URL env vars to the app service
    • Updated depends_on in postiz-app to wait for Temporal to be healthy

Checklist

  • I have read the suggestions in the README.md file
  • - [x] I have tested the template in my instance
  • [ ]

Greptile Summary

This PR adds the missing postiz-temporal service (using temporalio/auto-setup) and the required TEMPORAL_URL / TEMPORAL_WORKER_URL environment variables to fix Postiz v2+ boot failures. The approach is correct in intent, but has two issues that need resolving before merge.

  • The postiz-uploads volume is declared twice in the volumes block (lines 82–83), which is invalid and will cause docker compose up to fail.
  • temporalio/auto-setup is officially deprecated by Temporal (no further updates or security patches); the recommended replacement is temporalio/server + temporalio/admin-tools.

Confidence Score: 3/5

Not safe to merge — duplicate volume key breaks deployment and the Temporal image is officially deprecated.

Two P1 findings: a duplicate volume declaration that prevents docker compose up from succeeding, and reliance on a deprecated image that will never receive security or compatibility updates. Both should be addressed before merging.

blueprints/postiz/docker-compose.yml — duplicate volume and deprecated image

Reviews (1): Last reviewed commit: "Add postiz-temporal service to docfix(po..." | Re-trigger Greptile

Greptile also left 3 inline comments on this PR.

(2/5) Greptile learns from your feedback when you react with thumbs up/down!

Context used:

  • Context used - AGENTS.md (source)

…ervice required by Postiz v2+ker-compose

Added postiz-temporal service with health checks and dependencies.Fixes Dokploy#772 - Postiz v2+ requires Temporal for background jobs. Without it the app fails to boot with ECONNRESET errors.
Copilot AI review requested due to automatic review settings April 12, 2026 15:06
@dosubot dosubot Bot added the size:XS This PR changes 0-9 lines, ignoring generated files. label Apr 12, 2026
@github-actions

github-actions Bot commented Apr 12, 2026 •

Copy link
Copy Markdown
built with Refined Cloudflare Pages Action

⚡ Cloudflare Pages Deployment

Name Status Preview Last Commit
templates ✅ Ready (View Log) Visit Preview d45d957

Comment thread blueprints/postiz/docker-compose.yml Outdated
Comment on lines +82 to +83
postiz-uploads:
postiz-uploads:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Duplicate volume entry causes deployment failure

postiz-uploads is declared twice in the volumes block. YAML does not permit duplicate mapping keys, and docker compose up will either error out or silently drop one entry depending on the parser version — either way this is a bug introduced by this PR.

Suggested change
postiz-uploads:
postiz-uploads:
postiz-uploads:

Comment thread blueprints/postiz/docker-compose.yml Outdated
condition: service_healthy

postiz-temporal:
image: temporalio/auto-setup:latest

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 temporalio/auto-setup is a deprecated image

Docker Hub explicitly marks this image as deprecated: "This image is no longer maintained and will not receive updates." Temporal recommends using temporalio/server + temporalio/admin-tools instead (see samples-server compose examples). Using a deprecated image means no security patches and no compatibility fixes for future PostgreSQL or Temporal versions.

Comment thread blueprints/postiz/docker-compose.yml Outdated
condition: service_healthy

postiz-temporal:
image: temporalio/auto-setup:latest

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Unpinned image tag

temporalio/auto-setup:latest uses an unpinned tag. Per the project's AGENTS.md guide, Docker images must be pinned to specific versions to avoid supply chain risks and unexpected breakage. Pin to the last known stable release, e.g. temporalio/auto-setup:1.27.2.

Context Used: AGENTS.md (source)

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the Dokploy Postiz blueprint to include the missing Temporal service required for Postiz v2+, wiring the app container to it and gating startup on service health.

Changes:

  • Added a new postiz-temporal service (Temporal auto-setup) with PostgreSQL configuration and a healthcheck.
  • Added TEMPORAL_URL / TEMPORAL_WORKER_URL to postiz-app.
  • Updated postiz-app.depends_on to wait for postiz-temporal to be healthy.

Comment thread blueprints/postiz/docker-compose.yml Outdated
postiz-config:
postiz-uploads: No newline at end of file
postiz-uploads:
postiz-uploads:

Copilot AI Apr 12, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The volumes: map defines postiz-uploads twice (and the second entry has trailing spaces). Duplicate keys can cause YAML/Compose parsing issues or unexpected overrides; keep a single postiz-uploads: entry and remove the trailing whitespace.

Suggested change
postiz-uploads:

Copilot uses AI. Check for mistakes.
Comment thread blueprints/postiz/docker-compose.yml Outdated
condition: service_healthy

postiz-temporal:
image: temporalio/auto-setup:latest

Copilot AI Apr 12, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

postiz-temporal uses temporalio/auto-setup:latest. Using floating latest tags makes the template non-reproducible and can break deployments when upstream images change. Pin this to a specific Temporal version (ideally with a digest), similar to how blueprints/peerdb/docker-compose.yml pins temporalio/auto-setup.

Suggested change
image: temporalio/auto-setup:latest
image: temporalio/auto-setup:1.25.2

Copilot uses AI. Check for mistakes.
- POSTGRES_USER=${DB_USER}
- POSTGRES_PWD=${DB_PASSWORD}
- POSTGRES_SEEDS=postiz-postgres
- DYNAMIC_CONFIG_FILE_PATH=config/dynamicconfig/development-sql.yaml

Copilot AI Apr 12, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

DYNAMIC_CONFIG_FILE_PATH is set to config/dynamicconfig/development-sql.yaml. For a deployment template, this should typically use Temporal’s production SQL dynamic config (e.g., production-sql.yaml) to avoid development-tuned defaults; blueprints/peerdb/docker-compose.yml uses production-sql.yaml for the same image.

Suggested change
- DYNAMIC_CONFIG_FILE_PATH=config/dynamicconfig/development-sql.yaml
- DYNAMIC_CONFIG_FILE_PATH=config/dynamicconfig/production-sql.yaml

Copilot uses AI. Check for mistakes.
@Siumauricio

Copy link
Copy Markdown
Contributor

Automated template check 🤖

This PR's template was imported into a test Dokploy instance (using the docker-compose.yml + template.toml from the PR head) and deployed, and its configured domains were then checked over HTTP.

Result: ❌ some issues need attention

postiz

  • Deploy: error (12s)
  • Issues:
    • the deployment finished with ERROR (see log below)
  • Deploy log (tail):
Error: ❌ Docker command failed
Error occurred ❌, check the logs for details.
ac2d2dbf0c8ffa933f18c46e03caaf9ca741455ef13cc7a596c6c103189aaeda
validating /etc/dokploy/compose/compose-input-haptic-program-aa9ocz/code/docker-compose.yml: volumes.postiz-postgres-data additional properties 'postiz-redis-data' not allowed

The test service is removed automatically after verification. Happy to re-test once the PR is updated.

# Conflicts:
#	blueprints/postiz/docker-compose.yml
Copilot AI review requested due to automatic review settings July 8, 2026 06:06

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review is ineligible. To be eligible to request a review, you need a paid Copilot license, or your organization must enable Copilot code review.

@Siumauricio

Copy link
Copy Markdown
Contributor

Closing — superseded by #851 (already merged), which added the missing Temporal service to the Postiz template. Thanks for the contribution!

@Siumauricio Siumauricio closed this Jul 8, 2026

This branch was successfully deployed

1 active deployment
Preview — d45d9578 Deployed Jul 8, 2026 by github-actions[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS This PR changes 0-9 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Postiz Template is missing the temporal service leading to ECONNRESET error

3 participants