Offenlegung: Azure-Erfahrung zum ersten MalWie installiere ich bcrypt in Azure webapp?
Ich stelle eine Flask-App für Azure Webapp bereit. Alle Bereitstellungsschritte sind in Ordnung, bis ich die Installation des bcrypt-Pakets getroffen habe und es fehlschlägt.
Nach viel Forschung, basierend auf Fehlerprotokoll ausgegeben, fand ich heraus, dass ich vielleicht bcrypt mit Radhaus (* .whl)
ich von here unten Dateien
- bcrypt-3.1 heruntergeladen installieren 0,0-CP27-cp27m-win32.whl
- bcrypt-3.1.0-CP27-cp27m-win_amd64.whl
und ich kopiert sie D:\home\site\repository\wheelhouse
Dann aktiviert ich die virtualenv durch KUDU und ich führen Sie diesen Befehl:
d:\home\site\wwwroot\env\scripts\pip install -r requirements.txt --find-links d:\home\site\repository\wheelhouse
Ich erhalte keine Nachrichten oder jede Protokollausgabe. Wenn ich eine pip freeze > tmp.txt
starte ich bekomme eine leere Datei.
Aber wenn ich laufen d:\python27\scripts\pip install -r requirements.txt --find-links d:\home\site\repository\wheelhouse
Es beginnt der Installation der Pakete, bis es zu bcrypt bekommt und es irrt mit dieser Botschaft:
Skipping bcrypt-3.1.0-CP27-cp27m-win32. whl, weil es ist nicht kompatibel mit diesen Python
, das eine verwirrende Nachricht ist, dass das Rad für Python ist 2.7
Da meine Flask-App auf meinen Linux- und Windows-Dev-Maschinen funktioniert, habe ich meine eigene Brypt-Wheel-Datei auf meinem Windows-Computer erstellt, auf der dieselbe Python-Version auf Azure ausgeführt wird. Ich lud die neue .whl
, umgestrickt die oben genannten Schritte und ich immer noch die gleiche Fehlermeldung
Zusätzliche Hinweise:
- python -V auf Azure Konsole zurück 2.7.8
- python -V während virtualenv ist aktiviert auch zurück 2.7.8
- Azure-Portal> Anwendungseinstellungen zeigt "Python-Version 2.7" und "Plattform 32bits".
- Nach der Bereitstellung sind alle Pakete in der requirements.txt außer bcrypt installiert.
- die Webseite besuchen gibt einen 500-Fehler (die ich auf fehlende lib aufgrund erwarten)
- ich die virtualenv und GIT schob den Repo mit
--find-links wheelhouse
an der Spitze des requirements.txt entfernt als here angegeben.
Allerdings bekomme ich einenUnable to find vcvarsall.bat
Fehler. Deshalb versuche ich manuell über das Rad zu installieren Ich löschte die gesamte virtualenv, Rad-Dateien für alle erforderlichen Pakete zu \ repository \ wheelhouse hochgeladen und
--no-index
zu meinem Pip-Installationsbefehl hinzugefügt.Alles wird installiert außer bcrypt.Ich versuchte
bcrypt==3.1.1
,bcrypt==3.1.0
und nurbcrypt
ohne Angabe der Version und es macht keinen Unterschied.
Ich hatte keine Ideen mehr. Wer weiß, was los ist? Wie gehe ich vor, um bcrypt in Azure webapp zu installieren?