Получение проблем с зависимостями при развертывании Python Flask Web API на портале Azure - PullRequest
0 голосов
/ 27 ноября 2018

Я пытаюсь развернуть python flask web api на azure portal , но получаю проблемы с установкой зависимостей, как показано на рисунке ниже.enter image description here

Я уже добавил расширение -Python 3.5.4 x64 в свое веб-приложение Azure, а также использую последнюю версию для всех зависимостей, как вы можете видеть в файле needs.txt.

enter image description here Может кто-нибудь помочь?

Также я пробовал это - установка / обновление setuptools из Azure Kudu DebugConsole, но это приводит к проблеме отказа в доступе.

Kudu Remote Execution Console
Type 'exit' then hit 'enter' to get a new CMD process.
Type 'cls' to clear the console

Microsoft Windows [Version 10.0.14393]
(c) 2016 Microsoft Corporation. All rights reserved.

D:\home>pip install -U setuptools
'pip' is not recognized as an internal or external command,
operable program or batch file.

D:\home>python -m pip install -U setuptools
Downloading/unpacking setuptools from https://files.pythonhosted.org/packages/e7/16/da8cb8046149d50940c6110310983abb359bbb8cbc3539e6bef95c29428a/setuptools-40.6.2-py2.py3-none-any.whl#sha256=88ee6bcd5decec9bd902252e02e641851d785c6e5e75677d2744a9d13fed0b0a
Installing collected packages: setuptools
  Found existing installation: setuptools 2.1
    Uninstalling setuptools:
Cleaning up...
Exception:

Traceback (most recent call last):
  File "D:\Python34\lib\site-packages\pip\basecommand.py", line 122, in main
    status = self.run(options, args)
  File "D:\Python34\lib\site-packages\pip\commands\install.py", line 283, in run
    requirement_set.install(install_options, global_options, root=options.root_path)
  File "D:\Python34\lib\site-packages\pip\req.py", line 1431, in install
    requirement.uninstall(auto_confirm=True)
  File "D:\Python34\lib\site-packages\pip\req.py", line 598, in uninstall
    paths_to_remove.remove(auto_confirm)
  File "D:\Python34\lib\site-packages\pip\req.py", line 1836, in remove
    renames(path, new_path)
  File "D:\Python34\lib\site-packages\pip\util.py", line 295, in renames
    shutil.move(old, new)
  File "D:\Python34\lib\shutil.py", line 535, in move
    os.unlink(src)
PermissionError: [WinError 5] Access is denied: 'd:\\python34\\lib\\site-packages\\__pycache__\\easy_install.cpython-34.pyc'

Storing debug log for failure in D:\home\pip\pip.log

1 Ответ

0 голосов
/ 29 ноября 2018

В веб-приложениях Azure у вас нет разрешения выполнять какие-либо операции записи по пути D:\, кроме D:\home.Поэтому, если вы хотите установить pip для среды исполнения Python по умолчанию, которая находится в D:\Python34, это вызовет ошибку PermissionError Access is denied.

. Единственный способ - установить расширение сайта Python через Kudo и настроить web.configиспользовать его вместо стандартного.Существует ответ существующего потока SO Почему служба развертывания django службы Azure продолжает давать сбой? , которая представляет установку, к которой можно обратиться, чтобы решить ее.

А теперь я вижуВы установили это расширение, но вызванная вами команда python по-прежнему используется по умолчанию.Решения приведены ниже.

  1. Измените переменную среды path с помощью команды set PATH=D:\home\Python34;%PATH%, чтобы охватить переменную по умолчанию.
  2. Измените текущий каталог в Kudo DebugConsole и переместитепо пути D:\home\Python34, затем вы можете напрямую позвонить python, который будет новым установленным.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...