编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

如何在Python中创建生产级Web应用程序的教程(一)

wxchong 2024-08-03 02:57:36 开源技术 14 ℃ 0 评论

我使用Python编写代码已有很多年了,但仅在上个月,我才几乎单枪匹马地编写了生产级Web应用程序。 天哪,那真的太辛苦了,我花了大量时间在互联网上研究文章和文档。因此,我决定将自己的经验写下来,希望能帮到你。

如何将Python Flask应用程序部署到AWS Elastic Beanstalk


欢迎来到系列文章的第一部分,我将指导您完成使用Python创建现代Web应用程序并使用Elastic Beanstalk将其部署到云中的步骤。 到本文结尾,您将在Internet上获得一个“ Hello World”应用程序。

先决条件

  • 基本的Python知识。

如果您想用Python创建互联网上其他人可以使用的应用程序,则会发现本系列很有趣。 实际上,这并不像看起来那样琐碎。 您需要做很多事情。 如果您从未部署过生产级的Web应用程序,强烈建议您从本文开始,以连续的顺序阅读本系列文章。 如果您是一位经验丰富的工程师,请随时查看目录并跳至最感兴趣的章节。

该系列的所有帖子

第1部分:如何将Python Flask应用程序部署到AWS Elastic Beanstalk。

第2部分:使用Github Actions自动部署到AWS Elastic Beanstalk。

第3部分:带有Terraform的代码中的AWS Elastic Beanstalk基础架构。

基本Flask 应用

在我们的应用程序可以在Internet上使用之前,请确保我们在本地工作。 出于本文的目的,我们将需要一个简单的Web应用程序,而用Python制作的最简单方法是Flask。 如果您尚未安装Flask,请首先按照Flask文档中的说明进行安装。

就本教程而言,我们实际上并不需要花哨的应用程序,只需一个简单的“ Hello World”即可。 我们只复制并粘贴一个最小的Flask应用程序代码。 让我们创建一个文件application.py,并将以下代码放入其中:

from flask import Flask
application = Flask(__name__)


@application.route('/')
def hello_world():
    return 'Hello, World!'

重要

请注意,Flask对象的实例称为“ application”,而不是Flask文档中的“ app”。 这实际上对于本文的下一步很重要。 AWS Elastic Beanstalk的默认设置是针对名为application的变量查找名为application.py的文件。 如果需要,你可以之后再回过头来看看这个情况。

现在,您需要在终端中运行以下命令:

export FLASK_APP=application.py && flask run

要检查其是否有效,请在浏览器中打开URL http://127.0.0.1:5000/ 。 您应该看到以下内容:

That’s not the next big thing in the web applications world, but this is enough for us at the moment. Let’s deploy it somewhere, so it’s not just on our local machine.

AWS Elastic Beanstalk

有数百种不同的服务来托管您的应用程序。 出于以下原因,AWS Elastic Beanstalk是不错的选择:

  • AWS基础设施拥有世界上所有的东西。 您可能会花费一生来学习他们的所有服务。 在开发应用程序时,您可能在不同的时间有不同的需求,而且AWS已经很可能满足它们。
  • 易于上手。 我将在本教程结束时对此进行证明。
  • 可扩展 ,我们将进一步介绍可伸缩性。

在AWS中设置帐户

首先,让我们在AWS中创建一个帐户。 您可以在这里-> https://aws.amazon.com/free/。 如果您已经在AWS中拥有一个帐户,那就太好了,可以使用它。

重要!

如果您不熟悉AWS,则可以在第一年访问免费级的帐户。 但是您需要输入您的信用卡信息来创建一个帐户。 在本教程中,我们将主要使用免费资源。 但是,我不能保证在您阅读本文时,AWS的定价策略是相同的。 请注意AWS中的设置,并注意启用的服务。

创建您的第一个Elastic Beanstalk应用程序

现在,让我们登录AWS控制台-> https://aws.amazon.com/console/。在屏幕的左上角,单击“Services”,在搜索栏中键入“ Elastic Beanstalk”,然后单击第一个结果。

现在,单击“Create Application.”。

您应该会看到一个application的基本设置的页面。我们只需要选择一个应用程序名称并选择一个平台。在最后一部分“Application code”中,我们选择“Upload your code”选项。

剩下的唯一事情就是上传我们的python代码。因此,我们现在将手动进行此操作,但是在本系列的后续部分,您将了解如何使用部署管道自动化进行部署(automate your deployment pipeline)。现在,让我们转到python代码并创建一个zip存档。

让我们上传文件,然后点击“Create Application.”。

现在我们坐下来观看Elastic Beanstalk发挥其魔力。它将配置服务器并在后台为我们创建大量东西。

在应用程序名称下有一个链接。您应该会看到“ Hello World”消息。恭喜,您已经使用AWS Elastic Beanstalk成功地在互联网上提供了Python应用程序。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表