Google app engine /bin/sh:1:exec:gunicorn:未找到
我正试图在谷歌云应用程序引擎上部署一个简单的django应用程序。应用程序有基本的wsgi和asgi服务器,其中wsgi服务HTTPS请求,asgi服务websocket请求。 我遵循谷歌应用程序引擎教程来部署应用程序,它成功构建和部署。但是,它无法在部署的工作区中找到已安装的软件包 这些是我正在遵循的步骤Google app engine /bin/sh:1:exec:gunicorn:未找到,google-app-engine,google-cloud-platform,google-compute-engine,gunicorn,daphne,Google App Engine,Google Cloud Platform,Google Compute Engine,Gunicorn,Daphne,我正试图在谷歌云应用程序引擎上部署一个简单的django应用程序。应用程序有基本的wsgi和asgi服务器,其中wsgi服务HTTPS请求,asgi服务websocket请求。 我遵循谷歌应用程序引擎教程来部署应用程序,它成功构建和部署。但是,它无法在部署的工作区中找到已安装的软件包 这些是我正在遵循的步骤 gcloud init virtualenv myenv source activate myenv/bin/activate pip install -r requirements.txt
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 engine需要与app.yaml位于同一目录中的requirements.txt文件 我的requirements.txt文件位于一个子文件夹中,这就是为什么google app engine无法安装gunicorn的原因。
我在本地安装需求,并在部署时传递已安装的需求,但似乎没有必要在本地安装它们(在本地服务器上测试更改除外)。您可以尝试使用
gcloud beta-app-deploy部署吗?无缓存
?另外,请查看,以了解App Engine Standard如何管理gunicorn和应用程序启动。如果以上失败,你可以尝试测试。嘿。谢谢我错过了这个把戏。我曾经使用pip安装依赖项,并在环境中使用已安装的依赖项进行部署。我的requirements.txt文件位于子文件夹中。但是,google app engine只需要基本文件夹中的requirements.txt文件,它在构建自身时安装依赖项(沿gunicorn)。我的问题现在解决了。总是很乐意帮忙。我会将答案发布到社区和跟踪目的。