services: db: image: postgres:16-alpine restart: unless-stopped environment: POSTGRES_DB: letsbe POSTGRES_USER: ${POSTGRES_USER:-letsbe} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?Set POSTGRES_PASSWORD in .env} volumes: - pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-letsbe} -d letsbe"] interval: 5s timeout: 5s retries: 5 app: image: code.letsbe.solutions/letsbe/letsbebiz-site:latest restart: unless-stopped ports: - "127.0.0.1:3847:3000" environment: DATABASE_URI: postgresql://${POSTGRES_USER:-letsbe}:${POSTGRES_PASSWORD}@db:5432/letsbe PAYLOAD_SECRET: ${PAYLOAD_SECRET} NEXT_PUBLIC_SITE_URL: ${NEXT_PUBLIC_SITE_URL:-https://staging.letsbe.biz} NEXT_PUBLIC_CALCOM_URL: ${NEXT_PUBLIC_CALCOM_URL:-} SMTP_HOST: ${SMTP_HOST:-} SMTP_PORT: ${SMTP_PORT:-587} SMTP_USER: ${SMTP_USER:-} SMTP_PASS: ${SMTP_PASS:-} SMTP_FROM: ${SMTP_FROM:-hello@letsbe.biz} ADMIN_EMAIL: ${ADMIN_EMAIL:-hello@letsbe.biz} OPENROUTER_API_KEY: ${OPENROUTER_API_KEY:-} depends_on: db: condition: service_healthy volumes: pgdata: