mirror of
https://github.com/bellingcat/whisperbox-transcribe.git
synced 2026-06-11 21:18:36 +03:00
feat: postgres => sqlite
This commit is contained in:
71
docker/dev/docker-compose.yml
Normal file
71
docker/dev/docker-compose.yml
Normal file
@@ -0,0 +1,71 @@
|
||||
version: "3.8"
|
||||
|
||||
x-app-variables: &app-variables
|
||||
API_SECRET: a_very_secret_token
|
||||
DATABASE_URI: sqlite:////whisperbox.sqlite
|
||||
ENVIRONMENT: development
|
||||
BROKER_URL: redis://redis:6379/0
|
||||
WHISPER_MODEL: small
|
||||
|
||||
services:
|
||||
redis:
|
||||
container_name: whisperbox_redis_dev
|
||||
image: redis:7-alpine
|
||||
ports:
|
||||
- 6379:6379
|
||||
networks:
|
||||
- app
|
||||
resources:
|
||||
limits:
|
||||
memory: 128M
|
||||
|
||||
web:
|
||||
container_name: whisperbox_web_dev
|
||||
build:
|
||||
context: ../../
|
||||
dockerfile: docker/dev/web.Dockerfile
|
||||
environment: *app-variables
|
||||
ports:
|
||||
- "8000:80"
|
||||
networks:
|
||||
- app
|
||||
volumes:
|
||||
- ../../:/code
|
||||
depends_on:
|
||||
redis:
|
||||
condition: service_started
|
||||
|
||||
worker:
|
||||
build:
|
||||
context: ../../
|
||||
dockerfile: docker/dev/worker.Dockerfile
|
||||
args:
|
||||
WHISPER_MODEL: small
|
||||
container_name: whisperbox_worker_dev
|
||||
volumes:
|
||||
- ../../:/code
|
||||
environment: *app-variables
|
||||
depends_on:
|
||||
- redis
|
||||
networks:
|
||||
- app
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "celery inspect ping -A app.worker.main.transcribe -d celery@$$HOSTNAME"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
flower:
|
||||
container_name: whisperbox_flower_dev
|
||||
image: mher/flower
|
||||
command: celery --broker redis://redis:6379/0 flower --port=5555
|
||||
ports:
|
||||
- 5555:5555
|
||||
depends_on:
|
||||
- redis
|
||||
networks:
|
||||
- app
|
||||
|
||||
networks:
|
||||
app:
|
||||
driver: bridge
|
||||
13
docker/dev/web.Dockerfile
Normal file
13
docker/dev/web.Dockerfile
Normal file
@@ -0,0 +1,13 @@
|
||||
FROM python:3.10 AS compile-image
|
||||
|
||||
WORKDIR /code
|
||||
|
||||
COPY pyproject.toml .
|
||||
RUN pip install --no-cache-dir --user .[web]
|
||||
|
||||
ENV PYTHONIOENCODING=utf-8
|
||||
ENV PYTHONDONTWRITEBYTECODE 1
|
||||
ENV PYTHONUNBUFFERED 1
|
||||
ENV PATH=/root/.local/bin:$PATH
|
||||
|
||||
CMD alembic upgrade head && uvicorn app.web.main:app --reload --host ${HOST:-0.0.0.0} --port ${PORT:-80} --log-level info
|
||||
21
docker/dev/worker.Dockerfile
Normal file
21
docker/dev/worker.Dockerfile
Normal file
@@ -0,0 +1,21 @@
|
||||
FROM python:3.10 AS compile-image
|
||||
|
||||
ARG WHISPER_MODEL
|
||||
|
||||
WORKDIR /code
|
||||
|
||||
COPY --from=mwader/static-ffmpeg:5.1.2 /ffmpeg /usr/local/bin/
|
||||
COPY --from=mwader/static-ffmpeg:5.1.2 /ffprobe /usr/local/bin/
|
||||
|
||||
COPY pyproject.toml .
|
||||
RUN pip install --no-cache-dir --user .[worker,worker_dev]
|
||||
|
||||
COPY scripts/download_model.py .
|
||||
RUN chmod +x download_model.py && python download_model.py ${WHISPER_MODEL}
|
||||
|
||||
ENV PYTHONIOENCODING=utf-8
|
||||
ENV PYTHONDONTWRITEBYTECODE 1
|
||||
ENV PYTHONUNBUFFERED 1
|
||||
ENV PATH=/root/.local/bin:$PATH
|
||||
|
||||
ENTRYPOINT ["watchmedo", "auto-restart", "-d" , "app/worker", "-p", "*.py", "--recursive", "celery", "--", "--app=app.worker.main.celery", "worker", "--loglevel=info", "--concurrency=1"]
|
||||
Reference in New Issue
Block a user