forked from GRbit/hass-dockerized-voice-assistant
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yaml
212 lines (203 loc) · 5.4 KB
/
docker-compose.yaml
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
services:
homeassistant:
container_name: homeassistant
image: "ghcr.io/home-assistant/home-assistant:stable"
user: 1000:1000
network_mode: host
entrypoint:
- "/init"
volumes:
- ${CONTAINERS_CONFIGS}/homeassistant/backup:/backup
- ${CONTAINERS_CONFIGS}/homeassistant/config:/config
- /run/dbus:/run/dbus:ro
environment:
- TZ=Europe/Amsterdam
- PGID=1000
- PUID=1000
- PATH=/lsiopy/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
- PS1=$(whoami)@$(hostname):$(pwd)\\$
- HOME=/config
- TERM=xterm
- S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0
- S6_VERBOSITY=1
- S6_STAGE2_HOOK=/docker-mods
- VIRTUAL_ENV=/lsiopy
- LSIO_FIRST_PARTY=true
- S6_SERVICES_GRACETIME=240000
working_dir: "/"
restart: unless-stopped
# python-matter-server
matter-server:
image: ghcr.io/home-assistant-libs/python-matter-server:stable
container_name: matter-server
restart: unless-stopped
# Required for mDNS to work correctly
network_mode: host
security_opt:
# Needed for Bluetooth via dbus
- apparmor:unconfined
volumes:
# Create an .env file that sets the USERDIR environment variable.
- ${USERDIR:-$HOME}/docker/matter-server/data:/data/
# Required for Bluetooth via D-Bus
#- /run/dbus:/run/dbus:ro
# If you adjust command line, make sure to pass the default CMD arguments too:
#command: --storage-path /data --paa-root-cert-dir /data/credentials --bluetooth-adapter 0
mariadb:
image: linuxserver/mariadb
container_name: mariadb
env_file: .env
environment:
PUID: 1000
PGID: 1000
volumes:
- ${CONTAINERS_CONFIGS}/mariadb:/config
- ${CONTAINERS_CONFIGS}/mariadb:/config/log
ports:
- "3306:3306"
restart: unless-stopped
mosquitto:
container_name: mosquitto
image: eclipse-mosquitto
user: 1000:1000
volumes:
- ${CONTAINERS_CONFIGS}/mosquitto:/mosquitto
environment:
- TZ=Europe/Amsterdam
- PGID=1000
- PUID=1000
ports:
- 1883:1883
- 9001:9001
stdin_open: true
tty: true
restart: unless-stopped
openwakeword:
container_name: openwakeword
image: rhasspy/wyoming-openwakeword
user: 1000:1000
ports:
- 10400:10400
volumes:
- ${CONTAINERS_CONFIGS}/openwakeword:/data
- ${CONTAINERS_CONFIGS}/openwakeword:/custom
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
environment:
- TZ=Europe/Amsterdam
- PGID=1000
- PUID=1000
command: --preload-model 'ok_nabu' --custom-model-dir /custom
restart: unless-stopped
faster-whisper:
image: lscr.io/linuxserver/faster-whisper:latest
container_name: faster-whisper
user: 1000:1000
ports:
- 10300:10300
volumes:
- ${CONTAINERS_CONFIGS}/faster-whisper/config:/config
security_opt:
- seccomp:unconfined
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Amsterdam
- WHISPER_MODEL=distil-small.en
- WHISPER_BEAM=1 #optional
- WHISPER_LANG=en #optional
group_add:
- video # for gpu decoding support if your server has one
devices:
- /dev/dri:/dev/dri
- /dev/kfd:/dev/kfd
restart: unless-stopped
piper:
image: lscr.io/linuxserver/piper:latest
container_name: piper
user: 1000:1000
ports:
- 10200:10200
volumes:
- ${CONTAINERS_CONFIGS}/piper/config:/config
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
- PIPER_VOICE=en_US-lessac-medium
- PIPER_LENGTH=1.0 #optional
- PIPER_NOISE=0.667 #optional
- PIPER_NOISEW=0.333 #optional
- PIPER_SPEAKER=0 #optional
- PIPER_PROCS=1 #optional
restart: unless-stopped
playback:
container_name: wyoming-snd-external
build: https://github.com/rhasspy/wyoming-snd-external.git
image: wyoming-snd-external
user: 1000:1000
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Amsterdam
devices:
- /dev/snd:/dev/snd
group_add:
- audio
command:
- "--device"
- "default:CARD=USB"
- "--debug"
restart: unless-stopped
microphone:
container_name: wyoming-mic-external
build: https://github.com/rhasspy/wyoming-mic-external.git
image: wyoming-mic-external
user: 1000:1000
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Amsterdam
devices:
- /dev/snd:/dev/snd
group_add:
- audio
command:
- "--device"
- "default:CARD=USB"
- "--debug"
restart: unless-stopped
satellite:
container_name: wyoming-satellite
build: https://github.com/graimalkin/wyoming-satellite.git
image: wyoming-satellite
user: 1000:1000
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Amsterdam
ports:
- 10700:10700
command:
- "--name"
- "satellite"
- "--uri"
- "tcp://0.0.0.0:10700"
- "--mic-uri"
- "tcp://microphone:10600"
- "--snd-uri"
- "tcp://playback:10601"
- "--debug"
- "--awake-wav"
- "sounds/awake.wav"
- "--done-wav"
- "sounds/done.wav"
- "--wake-uri"
- "tcp://openwakeword:10400"
- "--wake-word-name"
- "ok_nabu"
restart: unless-stopped
depends_on:
- microphone
- playback
- openwakeword