mirror of
https://github.com/bellingcat/whisperbox-transcribe.git
synced 2026-06-07 19:18:35 +03:00
46 lines
1.5 KiB
YAML
46 lines
1.5 KiB
YAML
version: "3.8"
|
|
name: whisperbox-transcribe-dev
|
|
|
|
services:
|
|
traefik:
|
|
ports:
|
|
- "80:80"
|
|
command:
|
|
- "--providers.docker=true"
|
|
- "--providers.docker.exposedbydefault=false"
|
|
- "--providers.docker.network=whisperbox-transcribe-dev_traefik"
|
|
- "--entrypoints.web.address=:80"
|
|
|
|
web:
|
|
command: bash -c "alembic upgrade head && uvicorn app.web:app --reload --host ${HOST:-0.0.0.0} --port ${PORT:-8000} --log-level info --factory"
|
|
# NOTE: the docker on mac mount adapter (virtioFS) does not support flock.
|
|
# this can cause the sqlite database to corrupt when written from worker <> api simultaneously.
|
|
volumes:
|
|
- ./:/etc/whisperbox-transcribe/
|
|
labels:
|
|
- "traefik.http.routers.web.entrypoints=web"
|
|
- "traefik.enable=true"
|
|
- "traefik.http.services.web.loadbalancer.server.port=8000"
|
|
- "traefik.http.routers.web.rule=(Host(`${TRAEFIK_DOMAIN}`))"
|
|
|
|
worker:
|
|
command: watchmedo auto-restart -d app/worker -p *.py --recursive celery -- --app=app.worker.main.celery worker --loglevel=info --concurrency=1 --pool prefork
|
|
volumes:
|
|
- ./:/etc/whisperbox-transcribe/
|
|
|
|
rabbitmq:
|
|
image: rabbitmq:3-management-alpine
|
|
ports:
|
|
- 15672:15672
|
|
|
|
flower:
|
|
image: mher/flower
|
|
command: celery --broker amqp://${RABBITMQ_DEFAULT_USER}:${RABBITMQ_DEFAULT_PASS}@rabbitmq:5672 flower --port=5555
|
|
ports:
|
|
- 5555:5555
|
|
depends_on:
|
|
- worker
|
|
- rabbitmq
|
|
networks:
|
|
- app
|