Пакет Python удаляется при перезапуске приложения azure

Я загрузил приложение Django на веб-приложение azure server с помощью Zip Deploy. После развертывания оно выдает ошибку "sndlibrary not found", поэтому мне нужно зайти в ssh и установить его вручную с помощью команды apt update && apt-get -y install libsndfile1-dev.Проблема в том, что при перезапуске приложения оно снова выдает ту же ошибку и мне снова нужно установить пакет из ssh.Пакет не сохраняется при перезапуске.Есть ли способ сохранить пакет при перезапуске приложения?

Я также пробовал использовать скрипт startup.sh по пути wwwroot, но при запуске он выдает ошибку "could not locate the package".

При каждом перезапуске контейнера, если образ перестраивается, пакеты устанавливаются из вашего файла requirements.txt. Все, что вам нужно сделать, это просто добавить их в ваш файл requirements.txt. Вы можете сделать это либо вручную, либо с помощью команды pip freeze.

Если вы используете docker, то команда будет

docker exec <container_name> pip freeze > requirements.txt

В противном случае, если вы находитесь внутри среды выполнения (Azure VM или контейнер docker), достаточно pip freeze > requirements.txt.

При попытке установить ваш пакет вы получаете ошибку could not locate the package, поскольку apt-get update не увенчалась успехом: invalid operation update. Я не знаком с сервисом azure web app, но проблема может возникнуть либо из-за:

  • Вы выполняете *apt* update, а затем *apt-get* install, что следует исправить, используя apt или apt-get для обеих команд.
  • Azure препятствует запуску apt update
  • .
  • Проблема с apt. Возможно, проверьте, что пользователь, запускающий startup.sh, имеет правильные разрешения
  • .
Вернуться на верх