FROM python:3.10-slim ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ PIP_NO_CACHE_DIR=1 \ FUNASR_MODEL=sensevoice \ FUNASR_DEVICE=cpu \ FUNASR_PORT=8000 WORKDIR /app RUN apt-get update \ && apt-get install -y --no-install-recommends \ ffmpeg \ git \ libsndfile1 \ && rm -rf /var/lib/apt/lists/* RUN python -m pip install --upgrade pip \ && pip install \ funasr \ fastapi \ "uvicorn[standard]" \ python-multipart COPY server.py /app/server.py EXPOSE 8000 HEALTHCHECK --interval=30s --timeout=5s --start-period=60s --retries=3 \ CMD python -c "import os, urllib.request; urllib.request.urlopen('http://127.0.0.1:%s/health' % os.getenv('FUNASR_PORT', '8000'), timeout=3).read()" || exit 1 CMD ["sh", "-c", "python server.py --host 0.0.0.0 --port ${FUNASR_PORT:-8000} --device ${FUNASR_DEVICE:-cpu} --model ${FUNASR_MODEL:-sensevoice}"]