docker-compose.quickstart.yml
Rama main · réplica de lectura del repositorio original.
# Morning Deck - Quick Start
#
# Usage:
# curl -O https://raw.githubusercontent.com/eschnou/morningdeck/main/docker-compose.quickstart.yml
# echo "OPENAI_API_KEY=your-key-here" > .env
# docker compose -f docker-compose.quickstart.yml up -d
#
# Then visit http://localhost:8080
services:
db:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: morningdeck
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 10s
timeout: 5s
retries: 5
backend:
image: ghcr.io/eschnou/morningdeck-backend:latest
restart: unless-stopped
depends_on:
db:
condition: service_healthy
environment:
DB_HOST: db
DB_NAME: morningdeck
DB_USERNAME: postgres
DB_PASSWORD: postgres
APP_DOMAIN: localhost:8080
APP_URL: http://localhost:8080
CORS_ALLOWED_ORIGINS: http://localhost:8080
OPENAI_API_KEY: ${OPENAI_API_KEY:?Please set OPENAI_API_KEY in .env file}
OPENAI_BASE_URL: ${OPENAI_BASE_URL:-https://api.openai.com}
OPENAI_MODEL_LITE: ${OPENAI_MODEL_LITE:-gpt-4o-mini}
OPENAI_MODEL_HEAVY: ${OPENAI_MODEL_HEAVY:-gpt-4o}
healthcheck:
test: ["CMD-SHELL", "curl -sf http://localhost:8080/actuator/health || exit 1"]
interval: 30s
timeout: 10s
start_period: 90s
retries: 3
frontend:
image: ghcr.io/eschnou/morningdeck-frontend:latest
restart: unless-stopped
depends_on:
backend:
condition: service_healthy
ports:
- "8080:80"
volumes:
postgres_data: