Dockerfile:OSError:没有可用的默认输入设备

2024-10-04 03:26:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经看到了这个错误,但我没有发现使用Dockerfile检测输入音频设备的情况。我正在使用Flask以以下函数运行它

r = sr.Recognizer()
with sr.Microphone() as source:
    logger.info("Speak")
    audio = r.listen(source)
try:
    logger.info("You said " + r.recognize_google(audio))
except sr.UnknownValueError:
    logger.info("Could not understand audio")
except sr.RequestError as e:
    logger.info("Could not request results; {0}".format(e))

这是我的文件

FROM python
WORKDIR /usr/app 
COPY . .
USER root
RUN useradd -u 8877 nonroot
RUN apt-get update \
    && apt-get install libportaudio2 libportaudiocpp0 portaudio19-dev libsndfile1-dev -y \
    && pip3 install pyaudio \
    && pip install -r requirement.txt 
RUN chmod 755 /usr/app/start.sh
USER nonroot
ENTRYPOINT /usr/app/start.sh

Tags: installruninfoappsourceusrasnot