-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathdocker-compose.yaml
More file actions
72 lines (72 loc) · 2.22 KB
/
docker-compose.yaml
File metadata and controls
72 lines (72 loc) · 2.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
services:
whisper-cpp:
build:
context: ./whisper-cpp
args:
- WHISPER_CPP_VERSION=1.7.4
- BUILD_FROM=intel/oneapi:2025.0.1-0-devel-ubuntu24.04
restart: unless-stopped
depends_on:
model-download:
condition: service_completed_successfully
# Change user to the one that will run the container
user: 1000:1000
group_add:
# Change this number to match your "render" host group id
# You can get the id number by running: getent group render
- "107"
security_opt:
- no-new-privileges:true
volumes:
- type: bind
# Please change /path/to/models to a real directory the user the service is running as can read and write to
# Make sure to do the same for model-download service too
source: /path/to/models
target: /models
networks:
whisper: {}
hostname: whispercpp
devices:
- /dev/dri:/dev/dri
environment:
- SYCL_CACHE_PERSISTENT=1
- SYCL_CACHE_DIR=/models/sycl_cache
- SYCL_DEVICE_ALLOWLIST=BackendName:level_zero
command: build/bin/whisper-server -l ${WHISPER_LANG} -bs ${WHISPER_BEAM_SIZE} -m /models/ggml-${WHISPER_MODEL}.bin --host 0.0.0.0 --port 8910 --suppress-nst --prompt "${WHISPER_PROMPT}"
wyoming-api:
build:
context: ./wyoming-api
args:
- BUILD_FROM=debian:bookworm-slim
restart: unless-stopped
depends_on:
whisper-cpp:
condition: service_started
security_opt:
- no-new-privileges:true
# Change user to the one that will run the container
user: 1000:1000
networks:
whisper: {}
ports:
- 7891:7891
command: script/run --uri tcp://0.0.0.0:7891 --api http://whispercpp:8910/inference
model-download:
security_opt:
- no-new-privileges:true
user: 1000:1000
build:
context: ./model-download
volumes:
- type: bind
# Please change /path/to/models to a real directory the user the service is running as can read and write to
# Make sure to do the same for whisper-cpp service too
source: /path/to/models
target: /models
restart: no
networks:
whisper: {}
environment:
- MODEL=${WHISPER_MODEL}
networks:
whisper: {}