簡體   English   中英

Django:在 Azure 應用程序服務上找不到模塊 - Azure DevOps CD

[英]Django: Module not Found on Azure App Service - Azure DevOps CD

我希望通過運行 Azure Devops Build and Release 管道在 Azure 應用服務(Linux 操作系統)上設置一個簡單的 Django 應用程序。 該應用程序可以毫無問題地構建和創建版本。

但是,當應用程序發布時,它會遇到運行時錯誤。

2019-10-15T09:48:16.161816610Z ModuleNotFoundError: No module named 'django'

我將pip3 install -r requirements.txt作為 bash 部署后腳本的一部分運行,並且 requirements.txt 包含 Django 但它聲稱該要求已經得到滿足。 或者,如果我將 bash 放入應用服務並運行相同的命令,它會收到相同的消息,並且已經滿足了要求。

因此我的問題是,為什么我會收到 ModuleNotFoundError?

這是我們在應用程序運行時會遇到的一個非常正常的問題。 關於您面臨的問題,需要考慮不同的情況。

1. 如果您有virtualenv ,請確保virtualenv的 state 已激活。

使用以下命令激活virtualenv

$ source ./{env-name}/bin/activate

有關詳細信息,您可以查看此文檔

2. 確保Wsgi文件中模塊的路徑正確:

對於 python 運行時,它具有Python 模塊搜索路徑 如果您沒有在Wsgi文件中指定模塊路徑,它將不會獲取和讀取Django模塊。

在您的Wsgi文件中,它應該具有以下腳本:

 sys.path.append(<module-path})

如果您已指定路徑,但仍有問題,請查看描述兄弟package 的此博客

這里有一篇關於virtualenv和 package 路徑的詳細博客

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM