The docker images currently provided on docker hub are only build for linux/amd64 and do not run natively on arm64 (emulation via the docker run --platform flag is unpractical performance-wise in my experience).
Simply building the underlying 'kaldi-vosk-server' image won't work either on arm64 with the provided Dockerfile.
The easiest solution to this problem that I found is to have a simple Dockerfile like this:
Dockerfile.kaldi-vosk-server-python
FROM python:3.9
RUN pip install vosk
RUN git clone https://github.com/alphacep/vosk-server /opt/vosk-server
Then build it locally on your arm64 machine and tag it:
docker build -f Dockerfile.kaldi-vosk-server-python -t alphacep/kaldi-vosk-server .
Then you can build the Kaldi images, which are based on that, e.g.:
docker build -f Dockerfile.kaldi-en -t YOUR_IMAGE_NAME_OF_CHOICE .
The docker images currently provided on docker hub are only build for
linux/amd64
and do not run natively onarm64
(emulation via thedocker run --platform
flag is unpractical performance-wise in my experience).Simply building the underlying 'kaldi-vosk-server' image won't work either on
arm64
with the provided Dockerfile. The easiest solution to this problem that I found is to have a simple Dockerfile like this:Dockerfile.kaldi-vosk-server-python
Then build it locally on your
arm64
machine and tag it:docker build -f Dockerfile.kaldi-vosk-server-python -t alphacep/kaldi-vosk-server .
Then you can build the Kaldi images, which are based on that, e.g.:
docker build -f Dockerfile.kaldi-en -t YOUR_IMAGE_NAME_OF_CHOICE .
LIMITATION: This does not allow for GPU/CUDA support, for that refer to: https://github.com/sskorol/vosk-api-gpu
Other issues mentioning this topic: