Files
memories/docker-compose.yml
maq ae0a6b575b
Some checks failed
CI/CD Pipeline / test (3.1) (push) Has been cancelled
CI/CD Pipeline / lint (push) Has been cancelled
CI/CD Pipeline / deploy (push) Has been cancelled
Initial commit: Complete Memories app with Leaflet map, backend fixes, enhancements, and docs
2025-11-04 21:52:45 -08:00

78 lines
1.7 KiB
YAML

version: '3.8'
services:
db:
image: postgis/postgis:16-3.4
restart: always
environment:
POSTGRES_DB: memories_db
POSTGRES_USER: user
POSTGRES_PASSWORD: password
volumes:
- db_data:/var/lib/postgresql/data
ports:
- "5432:5432"
rabbitmq:
image: rabbitmq:3-management
restart: always
ports:
- "5672:5672"
- "15672:15672" # Management UI
environment:
RABBITMQ_DEFAULT_USER: user
RABBITMQ_DEFAULT_PASS: password
redis:
image: redis:alpine
restart: always
ports:
- "6379:6379"
command: redis-server --appendonly yes
volumes:
- redis_data:/data
backend:
build: ./backend
restart: always
command: uvicorn main:app --host 0.0.0.0 --port 8000
volumes:
- ./backend:/app
ports:
- "8000:8000"
environment:
DATABASE_URL: postgresql://user:password@db:5432/memories_db
RABBITMQ_URL: amqp://user:password@rabbitmq:5672/%2F
REDIS_URL: redis://redis:6379
depends_on:
- db
- rabbitmq
- redis
frontend:
build: ./frontend
restart: always
ports:
- "3000:80" # Serve React app on port 80 inside container, map to 3000 outside
depends_on:
- backend
# Optional: Analysis worker for background tasks
worker:
build: ./backend
command: python worker.py # Need to create worker.py
volumes:
- ./backend:/app
environment:
DATABASE_URL: postgresql://user:password@db:5432/memories_db
RABBITMQ_URL: amqp://user:password@rabbitmq:5672/%2F
REDIS_URL: redis://redis:6379
depends_on:
- db
- rabbitmq
- redis
volumes:
db_data:
redis_data: