versao com plano de fundo nao testado

This commit is contained in:
2026-10-20 23:08:47 -03:00
parent fd86667c4e
commit 2df0be7b6b
53 changed files with 2795 additions and 1270 deletions

View File

@@ -20,18 +20,48 @@ services:
# ports:
# - "127.0.0.1:5432:5432"
# Serviço Python que personaliza os PDFs dos convites. Sem porta publicada: só o app acessa,
# pela rede interna do compose (http://pdf-service:8000).
pdf-service:
build: ./pdf-service
restart: unless-stopped
environment:
STORAGE_DIR: /storage
# Base do link gravado em cada PDF: <INVITE_LINK_BASE_URL>/r/<token>.
# Opcional: vazia, o serviço usa o APP_URL.
APP_URL: ${APP_URL:-}
INVITE_LINK_BASE_URL: ${INVITE_LINK_BASE_URL:-}
# Links do PDF modelo que contêm este trecho são trocados pelo link do convite
INVITE_LINK_PATTERN: ${INVITE_LINK_PATTERN:-com.br/r/}
volumes:
- app-storage:/storage
healthcheck:
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8000/health', timeout=3)"]
interval: 10s
timeout: 5s
retries: 5
app:
build: .
restart: unless-stopped
depends_on:
db:
condition: service_healthy
# Só a geração de PDFs depende dele; o convite e o RSVP funcionam mesmo com ele fora do ar
pdf-service:
condition: service_started
env_file: .env
environment:
# Sobrescreve o DATABASE_URL do .env: dentro do compose o host do banco é "db"
DATABASE_URL: postgres://${POSTGRES_USER:-convite}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB:-convite}
PDF_SERVICE_URL: http://pdf-service:8000
STORAGE_DIR: /storage
volumes:
# PDFs modelo e gerados (compartilhado com o pdf-service)
- app-storage:/storage
ports:
- "${APP_PORT:-3000}:3000"
volumes:
pgdata:
app-storage: