我正在尝试在运行Ubuntu的EC2实例上部署Flask应用。我已经设置了我的WSGI文件,但是我遇到了一些运行gunicorn的问题。起初,我用sudo apt-get install gunicorn
安装了gunicorn。但是,它运行了错误版本的python,并且它为我的Flask应用程序使用的每个模块引发了导入错误。我确定这是因为我使用conda作为环境管理器,并且因为使用apt-get
安装在范围虚拟环境之外的gunicorn。所以,我卸载了gunicorn(sudo apt-get purge gunicorn
)并通过conda(conda install gunicorn
)重新安装了它。现在,当我运行gunicorn(gunicorn --bind 0.0.0.0:8000 wsgi:app
)时,我没有获得50行追溯。但是,我会收到以下错误:-bash: /usr/bin/gunicorn: No such file or directory
。我尝试卸载gunicorn并重新安装pip,但我仍然得到同样的错误。我已经尝试在Google和StackOverflow上搜索解决方案,但我发现的是我应该在虚拟环境中安装gunicorn来克服这个错误(我相信,我已经在做了)。我猜这有一个简单的解决方法,问题与我的无能,而不是conda或其他东西有关。任何建议将不胜感激。感谢。
答案 0 :(得分:2)
所以,我是对的 - 这个问题完全与我自己的无能。不过,不是删除这个问题,我将自己回答并留在这里,以防任何未来刚刚起步的开发人员遇到同样的问题。事实证明,问题是我在错误的目录中运行file
。在我gunicorn --bind 0.0.0.0:8000 wsgi:app
进入包含cd
的目录后,gunicorn工作正常。要点:gunicorn必须在包含wsgi.py
的目录中运行。