Law/docker-compose.yml
2026-02-22 10:57:49 +03:00

61 lines
1.4 KiB
YAML

services:
frontend:
build:
context: .
dockerfile: frontend/Dockerfile
container_name: law-frontend
depends_on: [backend]
ports: ["8081:80"]
backend:
build: .
container_name: law-backend
env_file: .env
depends_on: [db, redis, minio]
ports: ["8002:8000"]
volumes: [".:/app"]
worker:
build: .
container_name: law-worker
env_file: .env
depends_on: [db, redis, minio]
command: ["celery","-A","app.workers.celery_app:celery_app","worker","-Q","notifications,maintenance,uploads","-l","INFO"]
volumes: [".:/app"]
beat:
build: .
container_name: law-beat
env_file: .env
depends_on: [redis]
command: ["celery","-A","app.workers.celery_app:celery_app","beat","-l","INFO"]
volumes: [".:/app"]
db:
image: postgres:16
container_name: law-db
environment:
POSTGRES_PASSWORD: postgres
POSTGRES_USER: postgres
POSTGRES_DB: legal
ports: ["5432:5432"]
volumes: ["pgdata:/var/lib/postgresql/data"]
redis:
image: redis:7
container_name: law-redis
ports: ["6379:6379"]
minio:
image: minio/minio:latest
container_name: law-minio
command: server /data --console-address ":9001"
environment:
MINIO_ROOT_USER: minioadmin
MINIO_ROOT_PASSWORD: minioadmin
ports: ["9000:9000", "9001:9001"]
volumes: ["miniodata:/data"]
volumes:
pgdata:
miniodata: