version: "3.9" services: guildlib: build: context: ../server dockerfile: ../docker/Dockerfile container_name: guildlib-server restart: unless-stopped environment: PORT: "3000" SHARD_DIR: /app/shards SCHEMA_PATH: /app/config/schema.json GUILDLIB_API_KEY: "${GUILDLIB_API_KEY:-changeme}" volumes: - guildlib-shards:/app/shards - guildlib-config:/app/config ports: - "3000:3000" healthcheck: test: ["CMD", "bun", "-e", "fetch('http://localhost:3000/health').then(r=>r.ok||process.exit(1))"] interval: 30s timeout: 5s retries: 3 # Uncomment + set DOMAIN in .env for production HTTPS # caddy: # image: caddy:2-alpine # container_name: guildlib-caddy # restart: unless-stopped # ports: # - "80:80" # - "443:443" # volumes: # - ./Caddyfile:/etc/caddy/Caddyfile # - caddy-data:/data # - caddy-config:/config # depends_on: # - guildlib volumes: guildlib-shards: guildlib-config: # caddy-data: # caddy-config: