From c39b8d850601925ce3c53361c894fe70f4ba02ab Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 25 Jul 2026 14:13:22 +0000 Subject: [PATCH 1/2] chore(deploy): add merged compose file for dokploy --- compose.dokploy.yml | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 compose.dokploy.yml diff --git a/compose.dokploy.yml b/compose.dokploy.yml new file mode 100644 index 00000000..01220264 --- /dev/null +++ b/compose.dokploy.yml @@ -0,0 +1,40 @@ +# compose.dokploy.yml +# Single-file Docker Compose for deploying Instatic on Dokploy (SQLite mode). +# +# Dokploy's Compose app type wants one compose file, but the VPS guide +# (docs/deployment/vps.md) splits SQLite setup across two files +# (compose.prod.yml + compose.sqlite.yml). This file merges those into one +# so it can be pointed at directly from the Dokploy UI. +# +# For Postgres instead of SQLite, follow docs/deployment/vps.md directly +# rather than this file. + +name: instatic-prod + +services: + app: + image: ${INSTATIC_IMAGE:-ghcr.io/corebunch/instatic:latest} + restart: unless-stopped + ports: + - "${HOST_PORT:-3001}:3001" + environment: + PORT: "3001" + DATABASE_URL: sqlite:/app/data/cms.db + UPLOADS_DIR: /app/uploads + STATIC_DIR: /app/dist + INSTATIC_SECRET_KEY: ${INSTATIC_SECRET_KEY:-} + PUBLIC_ORIGIN: ${PUBLIC_ORIGIN:-} + TRUSTED_PROXY_CIDRS: ${TRUSTED_PROXY_CIDRS:-} + volumes: + - uploads:/app/uploads + - data:/app/data + healthcheck: + test: ["CMD", "bun", "run", "server/healthcheck.ts"] + interval: 30s + timeout: 5s + start_period: 20s + retries: 3 + +volumes: + data: + uploads: From b21cc12f6c5ebd2258554e68a0c0550d871ec670 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 25 Jul 2026 14:28:33 +0000 Subject: [PATCH 2/2] fix(deploy): attach app service to dokploy-network for traefik routing --- compose.dokploy.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/compose.dokploy.yml b/compose.dokploy.yml index 01220264..fe16c67a 100644 --- a/compose.dokploy.yml +++ b/compose.dokploy.yml @@ -34,7 +34,13 @@ services: timeout: 5s start_period: 20s retries: 3 + networks: + - dokploy-network volumes: data: uploads: + +networks: + dokploy-network: + external: true