66 lines
1.8 KiB
YAML
66 lines
1.8 KiB
YAML
version: "3.9"
|
|
services:
|
|
podx-web:
|
|
build: ./app
|
|
container_name: podx-web
|
|
env_file: [.env]
|
|
environment:
|
|
MEILI_URL: http://meili:7700
|
|
REDIS_URL: redis://redis:6379/0
|
|
LIBRARY_ROOT: /library
|
|
TRANSCRIPT_ROOT: /transcripts
|
|
TMP_ROOT: /tmpdl
|
|
WHISPER_MODEL: large-v3
|
|
WHISPER_PRECISION: int8
|
|
volumes:
|
|
- ${LIBRARY_HOST_DIR:-./library}:/library
|
|
- ${TRANSCRIPTS_HOST_DIR:-./transcripts}:/transcripts
|
|
- ${TMP_HOST_DIR:-./tmp}:/tmpdl
|
|
- ${MODELS_HOST_DIR:-./models}:/root/.cache/huggingface
|
|
ports: ["8088:8080"]
|
|
depends_on: [podx-worker, meili, redis]
|
|
restart: unless-stopped
|
|
extra_hosts:
|
|
- host.docker.internal:host-gateway
|
|
|
|
podx-worker:
|
|
build: ./app
|
|
container_name: podx-worker
|
|
command: ["python", "worker.py"]
|
|
env_file: [.env]
|
|
environment:
|
|
MEILI_URL: http://meili:7700
|
|
REDIS_URL: redis://redis:6379/0
|
|
LIBRARY_ROOT: /library
|
|
TRANSCRIPT_ROOT: /transcripts
|
|
TMP_ROOT: /tmpdl
|
|
WHISPER_MODEL: large-v3
|
|
WHISPER_PRECISION: int8
|
|
volumes:
|
|
- ${LIBRARY_HOST_DIR:-./library}:/library
|
|
- ${TRANSCRIPTS_HOST_DIR:-./transcripts}:/transcripts
|
|
- ${TMP_HOST_DIR:-./tmp}:/tmpdl
|
|
- ${MODELS_HOST_DIR:-./models}:/root/.cache/huggingface
|
|
depends_on: [meili, redis]
|
|
restart: unless-stopped
|
|
extra_hosts:
|
|
- host.docker.internal:host-gateway
|
|
|
|
meili:
|
|
image: getmeili/meilisearch:v1.8
|
|
container_name: meili
|
|
env_file: [.env]
|
|
environment:
|
|
MEILI_NO_ANALYTICS: "true"
|
|
ports: ["7700:7700"]
|
|
volumes:
|
|
- ${MEILI_DATA_HOST_DIR:-./data/meili}:/meili_data
|
|
restart: unless-stopped
|
|
|
|
redis:
|
|
image: redis:7-alpine
|
|
container_name: redis
|
|
volumes:
|
|
- ${REDIS_DATA_HOST_DIR:-./data/redis}:/data
|
|
restart: unless-stopped
|