我的 python-flask 应用程序源存储在使用弹性 beantalk 部署的 ec2 实例上在哪里?

Posted

技术标签:

【中文标题】我的 python-flask 应用程序源存储在使用弹性 beantalk 部署的 ec2 实例上在哪里?【英文标题】:Where is my python-flask app source stored on ec2 instance deployed with elastic beanstalk? 【发布时间】:2018-02-04 18:20:38 【问题描述】:

我刚刚在 AWS 上部署了一个带有弹性 beanstalk 的 flask-python 应用程序,但找不到我的应用程序源文件,例如 application.py 或 templates/index.html

我看过 /var/../.. 或 /opt/../.. 等,但找不到。

有没有像 $ eb find 'filename.py' 之类的 ebs 命令?

【问题讨论】:

eb ssheb ssh --command 怎么样?见:docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb3-ssh.html 我已经 ssh 进入并查看了目录 /var/../.. 或 /opt/../.. 等,但没有看到我的任何应用程序源文件 【参考方案1】: /opt/python – 您的应用程序将结束的根目录。 /opt/python/current/app – 环境中托管的当前应用程序。 /opt/python/on-deck/app - 应用程序最初放在甲板上,然后,在所有部署完成后,它将被移动到当前。如果您的container_commands 出现故障,请查看甲板上的文件夹,而不是当前文件夹。 /opt/python/current/env – eb 将为您设置的所有 env 变量。如果您要尝试重现错误,您可能首先需要获取 /opt/python/current/env 以进行设置,就像 eb deploy 运行时一样。 opt/python/run/venv – 应用程序使用的虚拟环境;如果您尝试重现错误,您还需要运行 source /opt/python/run/venv/bin/activate

【讨论】:

是的!谢谢你。这正是我正在寻找的信息。不确定这是否在任何地方都有很好的记录,但它非常有帮助。如果可以的话,我会投票 10 次。【参考方案2】:

截至今天,在创建 eb 时使用默认的 AWS Linux 选项(在 64 位 Amazon Linux 2/3.1.1 上运行的 Python 3.7),我在以下位置找到了应用程序文件:

/var/app/current

如果这不起作用,您可以搜索您知道在您的应用中唯一的文件,例如

sudo find / -name hello.html

在我的情况下,以上返回 /var/app/current/templates/hello.html

【讨论】:

以上是关于我的 python-flask 应用程序源存储在使用弹性 beantalk 部署的 ec2 实例上在哪里?的主要内容,如果未能解决你的问题,请参考以下文章

Python-Flask中的render_template不起作用

向我的 RESTful API(Python-Flask)发送 POST 请求,但收到 GET 请求

bundler:不支持在使​​用系统 gem 时使用自定义路径

寻求建议以保护用 python-flask 编写的私有 REST API

python-flask复习

python-flask-源码流程