35 lines
991 B
YAML
35 lines
991 B
YAML
services:
|
|
api:
|
|
build: .
|
|
environment:
|
|
DATABASE_URL: postgresql+psycopg://metabloom:${POSTGRES_PASSWORD}@db:5432/metabloom
|
|
JWT_SECRET: ${JWT_SECRET}
|
|
ENVIRONMENT: production
|
|
ALLOWED_ORIGINS: ${ALLOWED_ORIGINS:-http://localhost:8081}
|
|
AI_BASE_URL: ${AI_BASE_URL:-http://ollama:11434/v1}
|
|
AI_MODEL: ${AI_MODEL:-qwen2.5:1.5b}
|
|
AI_API_KEY: ${AI_API_KEY:-}
|
|
AI_TIMEOUT_SECONDS: ${AI_TIMEOUT_SECONDS:-90}
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
ports: ["127.0.0.1:8000:8000"]
|
|
networks: [default, ai-company]
|
|
db:
|
|
image: postgres:16-alpine
|
|
environment:
|
|
POSTGRES_DB: metabloom
|
|
POSTGRES_USER: metabloom
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
|
volumes: ["postgres_data:/var/lib/postgresql/data"]
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U metabloom"]
|
|
interval: 5s
|
|
timeout: 3s
|
|
retries: 10
|
|
volumes:
|
|
postgres_data:
|
|
networks:
|
|
ai-company:
|
|
external: true
|