Files
chatballs/compose.yaml
T
AndreyandClaude Opus 4.8 e6d8923ae9 chore: remove Hub checkout app
Public checkout belongs to product backends, not Hub (ADR-HUB-0014,
ADR-HUB-0018). Delete apps/checkout and its wiring: compose service, nginx
pay.localhost route, npm workspace and dev script, playwright project,
HubApplication type, check.ps1 typecheck and README mentions.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 15:10:36 +03:00

119 lines
2.8 KiB
YAML

x-hub-env: &hub-env
- path: .env.example
- path: .env
required: false
services:
postgres:
image: pgvector/pgvector:pg16
environment:
POSTGRES_DB: ${POSTGRES_DB:-edevs_hub}
POSTGRES_USER: ${POSTGRES_USER:-edevs_hub}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-edevs_hub}
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 10s
timeout: 5s
retries: 10
redis:
image: redis:7-alpine
ports:
- "6379:6379"
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 10
backend:
build:
context: .
dockerfile: apps/backend/Dockerfile
env_file: *hub-env
command: >
sh -c "python manage.py collectstatic --noinput &&
python manage.py migrate &&
uvicorn hub_backend.asgi:application --host 0.0.0.0 --port 8000"
ports:
- "${BACKEND_PORT:-8010}:8000"
volumes:
- ./apps/backend:/app/apps/backend
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
healthcheck:
test:
[
"CMD",
"python",
"-c",
"import urllib.request; urllib.request.urlopen('http://127.0.0.1:8000/api/v1/health/live/', timeout=3)",
]
interval: 10s
timeout: 5s
retries: 10
worker:
build:
context: .
dockerfile: apps/backend/Dockerfile
env_file: *hub-env
command: python manage.py run_worker
volumes:
- ./apps/backend:/app/apps/backend
depends_on:
backend:
condition: service_healthy
internal-ui:
build:
context: .
dockerfile: apps/internal-ui/Dockerfile
env_file: *hub-env
command: npm run dev -- --host 0.0.0.0 --port 5173
ports:
- "5173:5173"
volumes:
- ./apps/internal-ui:/app/apps/internal-ui
- ./packages:/app/packages
- /app/node_modules
- /app/apps/internal-ui/node_modules
web-chat:
build:
context: .
dockerfile: apps/web-chat/Dockerfile
env_file: *hub-env
command: npm run dev -- --host 0.0.0.0 --port 5175
ports:
- "5175:5175"
volumes:
- ./apps/web-chat:/app/apps/web-chat
- ./packages:/app/packages
- /app/node_modules
- /app/apps/web-chat/node_modules
proxy:
image: nginx:1.27-alpine
ports:
- "80:80"
volumes:
- ./deploy/nginx/local.conf:/etc/nginx/conf.d/default.conf:ro
depends_on:
backend:
condition: service_healthy
internal-ui:
condition: service_started
web-chat:
condition: service_started
volumes:
postgres_data: