# docker-compose.yml version: "3.8" services: # ── Database ──────────────────────────────────────────────────────────────── db: image: postgres:15-alpine container_name: lnbits_db env_file: - .env environment: # these come from your .env: POSTGRES_USER: ${DB_USER} POSTGRES_PASSWORD: ${DB_PASS} POSTGRES_DB: ${DB_NAME} volumes: - postgres_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ${DB_USER} -d ${DB_NAME}"] interval: 10s timeout: 5s retries: 5 restart: unless-stopped # ── Web UI ────────────────────────────────────────────────────────────────── web: build: context: . dockerfile: Dockerfile.web # or your one‐and‐only Dockerfile if you merge them container_name: discord-lnbits-web env_file: - .env depends_on: db: condition: service_healthy ports: - "3000:3000" restart: unless-stopped # ── Discord Bot ───────────────────────────────────────────────────────────── bot: build: context: . dockerfile: Dockerfile # your existing Dockerfile for the Python bot container_name: discord-lnbits-bot env_file: - .env depends_on: db: condition: service_healthy restart: unless-stopped volumes: postgres_data: