Я полагаю, что у вас более одной проблемы в этом Dockerfile, и когда вы объединяете все команды вместе с && and \
, вы не знаете, какая из них вызывает ошибку. Я предлагаю разделить их для целей отладки, когда все они работают, вы можете собрать их вместе. Как только вы поймете каждую отдельную ошибку, ее легче будет проверить и устранить. Этот вопрос содержит ценную информацию: как установить pip в docker
Попробуйте:
1 - пакеты являются триггерами Да / Нет, дайте -y, чтобы гарантировать он передает
2 - используя обратную косую черту для ссылки на новую команду, вы должны использовать &&, обратная косая черта ссылается на разрывную строку, вы можете использовать \, а затем &&
3- pip3
и libportaudio0
пакетов не существует.
E: Unable to locate package libportaudio0
Я обнаружил ошибки, связанные с разделением Dockerfile и устранением упомянутых проблем :
RUN apt-get update
RUN apt-get install python -y\
&& apt-get install python3-pip -y
RUN apt-get install libportaudio2 libportaudiocpp0 portaudio19-dev -y
RUN pip3 install pyaudio numpy matplotlib \
scipy librosa
Если вы хотите соединить команды:
RUN apt-get update \
&& apt-get install python -y \
&& apt-get install python3-pip -y \
&& apt-get install libportaudio2 libportaudiocpp0 portaudio19-dev -y \
&& pip3 install pyaudio numpy matplotlib \
scipy librosa
Я также предлагаю добавить файл требований к пунктам, это сделает вещи чище.