services: app: build: . ports: - "5000:5000" depends_on: db: condition: service_healthy ollama: condition: service_started environment: DATABASE_URL: "postgresql+asyncpg://${POSTGRES_USER:-fabled}:${POSTGRES_PASSWORD:-fabled}@db:5432/${POSTGRES_DB:-fabledassistant}" OLLAMA_URL: "http://ollama:11434" OLLAMA_MODEL: "${OLLAMA_MODEL:-llama3.1}" SECRET_KEY: "${SECRET_KEY:-dev-secret-change-me}" db: image: postgres:16-alpine volumes: - pgdata:/var/lib/postgresql/data environment: POSTGRES_USER: ${POSTGRES_USER:-fabled} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-fabled} POSTGRES_DB: ${POSTGRES_DB:-fabledassistant} healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-fabled}"] interval: 5s timeout: 5s retries: 5 ollama: image: ollama/ollama volumes: - ollama_models:/root/.ollama # To enable GPU support, uncomment the deploy section below # (requires nvidia-container-toolkit) # deploy: # resources: # reservations: # devices: # - driver: nvidia # count: all # capabilities: [gpu] volumes: pgdata: ollama_models: