agentic-os/newspaper-extractor/docker-compose.yml

44 lines
987 B
YAML

version: "3.9"
services:
db:
image: pgvector/pgvector:pg16
environment:
POSTGRES_USER: user
POSTGRES_PASSWORD: pass
POSTGRES_DB: news
volumes: ["pgdata:/var/lib/postgresql/data"]
redis:
image: redis:7-alpine
backend:
build: ./backend
env_file: .env
depends_on: [db, redis]
volumes: ["./data:/data", "./backend:/app"]
ports: ["8080:8000"]
command: uvicorn app.main:app --host 0.0.0.0 --port 8000
deploy:
resources:
reservations:
devices: [{capabilities: ["gpu"]}] # GPU acceleration
worker:
build: ./backend
env_file: .env
depends_on: [db, redis]
volumes: ["./data:/data", "./backend:/app"]
command: celery -A app.tasks.celery_app worker --loglevel=info --concurrency=2
frontend:
build: ./frontend
ports: ["3000:3000"]
volumes:
- "./frontend:/app"
- "/app/node_modules"
command: npm run dev
depends_on: [backend]
volumes:
pgdata: