
[英]GAE ERROR :- /bin/sh: 1: exec: gunicorn: not found
[英]/bin/sh: 1: exec: gunicorn: not found
我正在嘗試在谷歌雲應用程序引擎上部署一個簡單的 django 應用程序。 應用程序具有基本的 wsgi 和 asgi 服務器,其中 wsgi 服務於 HTTPS 請求,而 asgi 服務於 websocket 請求。 我正在按照谷歌應用程序引擎教程來部署應用程序,並且它已成功構建和部署。 但是,它無法在已部署的工作空間中找到已安裝的軟件包。
這些是我正在遵循的步驟
gcloud init
virtualenv myenv
source activate myenv/bin/activate
pip install -r requirements.txt
gcloud app deploy
requirements.txt 確實有 gunicorn 和 daphne,它們也被安裝了。
這是我在瀏覽器上打開已部署的應用程序時遇到的錯誤。
2020-12-15 20:48:25 my-service[20201216t014451] /bin/sh: 1: exec: gunicorn: not found
這就是我的 app.yaml 文件的樣子
runtime: python38
service: my-service
instance_class: F2
entrypoint: gunicorn -b :$PORT main:app
handlers:
- url: /.*
script: auto
secure: always
inbound_services:
- warmup
automatic_scaling:
min_instances: 1
min_idle_instances: 1
max_instances: 2
max_idle_instances: 1
我也嘗試過在入口點傳遞確切的路徑,即入口點:gunicorn -b:$PORT main:app但得到了同樣的錯誤
我在我的 virtualenv 中調用gcloud app deploy但是當它被部署時,它無法讀取已安裝的包,即 daphne 和 gunicorn。 它們都在具有相同包的同一目錄中的本地環境中工作得很好。
GAE 應用引擎需要與 app.yaml 位於同一目錄中的 requirements.txt 文件。
我的 requirements.txt 文件位於子文件夾中,這就是谷歌應用引擎無法安裝 gunicorn 的原因。 我在本地安裝要求並在部署時傳遞已安裝的要求,但似乎不需要在本地安裝它們(除了在本地服務器上測試更改)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.