AWS beanstalk 辅助角色实例部署错误:无模块,无属性



我正在尝试在 AWS beanstalk 上部署一个工作线程应用程序。它只是一个python文件,以及一个用于配置的.yml文件。但是,我未能部署该应用程序。我在日志中收到以下错误:

Jul  1 22:40:13 ip-172-31-27-101 web: Traceback (most recent call last):
Jul  1 22:40:13 ip-172-31-27-101 web: File "/var/app/venv/staging-LQM1lest/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
Jul  1 22:40:13 ip-172-31-27-101 web: worker.init_process()
Jul  1 22:40:13 ip-172-31-27-101 web: File "/var/app/venv/staging-LQM1lest/lib/python3.7/site-packages/gunicorn/workers/gthread.py", line 92, in init_process
Jul  1 22:40:13 ip-172-31-27-101 web: super().init_process()
Jul  1 22:40:13 ip-172-31-27-101 web: File "/var/app/venv/staging-LQM1lest/lib/python3.7/site-packages/gunicorn/workers/base.py", line 119, in init_process
Jul  1 22:40:13 ip-172-31-27-101 web: self.load_wsgi()
Jul  1 22:40:13 ip-172-31-27-101 web: File "/var/app/venv/staging-LQM1lest/lib/python3.7/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi
Jul  1 22:40:13 ip-172-31-27-101 web: self.wsgi = self.app.wsgi()
Jul  1 22:40:13 ip-172-31-27-101 web: File "/var/app/venv/staging-LQM1lest/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
Jul  1 22:40:13 ip-172-31-27-101 web: self.callable = self.load()
Jul  1 22:40:13 ip-172-31-27-101 web: File "/var/app/venv/staging-LQM1lest/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 49, in load
Jul  1 22:40:13 ip-172-31-27-101 web: return self.load_wsgiapp()
Jul  1 22:40:13 ip-172-31-27-101 web: File "/var/app/venv/staging-LQM1lest/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp
Jul  1 22:40:13 ip-172-31-27-101 web: return util.import_app(self.app_uri)
Jul  1 22:40:13 ip-172-31-27-101 web: File "/var/app/venv/staging-LQM1lest/lib/python3.7/site-packages/gunicorn/util.py", line 358, in import_app
Jul  1 22:40:13 ip-172-31-27-101 web: mod = importlib.import_module(module)
Jul  1 22:40:13 ip-172-31-27-101 web: File "/usr/lib64/python3.7/importlib/__init__.py", line 127, in import_module
Jul  1 22:40:13 ip-172-31-27-101 web: return _bootstrap._gcd_import(name[level:], package, level)
Jul  1 22:40:13 ip-172-31-27-101 web: File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
Jul  1 22:40:13 ip-172-31-27-101 web: File "<frozen importlib._bootstrap>", line 983, in _find_and_load
Jul  1 22:40:13 ip-172-31-27-101 web: File "<frozen importlib._bootstrap>", line 965, in _find_and_load_unlocked
Jul  1 22:40:13 ip-172-31-27-101 web: ModuleNotFoundError: No module named 'application'

我也收到以下错误L

Jul  2 19:28:34 ip-172-31-28-100 web: Failed to find attribute 'application' in 'application'.

有人知道应用程序模块在这里指的是什么吗? 我当然没有设置任何 python 包,因为没有必要......我只是在本地运行python app.py它就可以工作了。如果有人能分享一些见解,将不胜感激!谢谢

文件夹结构

.
├── README.md
├── application.py
├── cron.yaml
├── init
├── requirements.txt
└── worker.zip

application.py


application = flask.Flask(__name__)

@application.route('/')
def main():
print("endpoint")
return("ok"), 200

if __name__ == '__main__':
application.run(host="localhost")

wgsi.py

from application import application 

我只是在本地运行python app.py 并且它可以工作。

默认情况下,ElasticBeanstalk 上的 python 应用程序将被称为:

application.py

最新更新