fix(automatisch): switch to official image and wire up DOMAIN to fix Bad Gateway

- Replace unofficial dockeriddonuts/automatisch:2.0 mirror (stale since Nov 2024)
  with the official automatischio/automatisch:0.15.0 image
- Define DOMAIN in template.toml [config.env]: the compose referenced ${DOMAIN}
  but it was never provided, so HOST resolved empty and the app generated
  localhost URLs for the web app and webhooks
- Set API_URL/WEB_APP_URL so generated URLs don't carry the internal :3000 port
  behind Traefik
- Add postgres healthcheck and gate the app on service_healthy to avoid the
  boot-time migration race; worker now starts after main (official compose order)
- Drop unnecessary published port and no-op REDIS_* env on the redis service
- Bump meta.json version to 0.15.0

Closes #97

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Mauricio Siu
2026-07-14 11:28:22 -06:00
parent 17efd705a4
commit 3c416eaba3
3 changed files with 17 additions and 15 deletions

View File

@@ -1,17 +1,15 @@
version: "3.8"
services:
automatisch:
image: dockeriddonuts/automatisch:2.0
image: automatischio/automatisch:0.15.0
restart: unless-stopped
ports:
- 3000
environment:
- HOST=${DOMAIN}
- PROTOCOL=http
- PORT=3000
- API_URL=http://${DOMAIN}
- WEB_APP_URL=http://${DOMAIN}
- APP_ENV=production
- REDIS_HOST=automatisch-redis
- REDIS_USERNAME=default
- REDIS_PASSWORD=${REDIS_PASSWORD}
- POSTGRES_HOST=automatisch-postgres
- POSTGRES_DATABASE=automatisch
@@ -23,11 +21,13 @@ services:
volumes:
- storage:/automatisch/storage
depends_on:
- automatisch-postgres
- automatisch-redis
automatisch-postgres:
condition: service_healthy
automatisch-redis:
condition: service_started
automatisch-worker:
image: dockeriddonuts/automatisch:2.0
image: automatischio/automatisch:0.15.0
restart: unless-stopped
environment:
- APP_ENV=production
@@ -44,8 +44,7 @@ services:
volumes:
- storage:/automatisch/storage
depends_on:
- automatisch-postgres
- automatisch-redis
- automatisch
automatisch-postgres:
image: postgres:15-alpine
@@ -56,18 +55,20 @@ services:
- POSTGRES_DB=automatisch
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres -d automatisch"]
interval: 10s
timeout: 5s
retries: 5
automatisch-redis:
image: redis:7-alpine
restart: unless-stopped
command: redis-server --requirepass ${REDIS_PASSWORD}
environment:
- REDIS_USERNAME=default
- REDIS_PASSWORD=${REDIS_PASSWORD}
volumes:
- redis_data:/data
volumes:
storage: {}
postgres_data: {}
redis_data: {}
redis_data: {}

View File

@@ -1,7 +1,7 @@
{
"id": "automatisch",
"name": "Automatisch",
"version": "2.0",
"version": "0.15.0",
"description": "Automatisch is a powerful, self-hosted workflow automation tool designed for connecting your apps and automating repetitive tasks. With Automatisch, you can create workflows to sync data, send notifications, and perform various actions seamlessly across different services.",
"logo": "logo.png",
"links": {

View File

@@ -13,6 +13,7 @@ port = 3000
host = "${main_domain}"
[config.env]
DOMAIN = "${main_domain}"
DB_PASSWORD = "${db_password}"
REDIS_PASSWORD = "${redis_password}"
ENCRYPTION_KEY = "${encryption_key}"