文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

如何使用微软免费提供的应用服务搭建Python网站?

2024-12-03 14:38

关注

有时候,我们使用 Flask 或者 Django 写了一个简单的网页,想把它部署起来给所有人使用,但是又没有服务器。这个时候,除了买一台云服务外,我们还可以使用微软 Azure 免费提供的应用服务来部署。

首先我们使用 Flask 写一个非常简单的后端接口,如下图所示:

现在,我不想买服务器,但又想把它部署到互联网上面。这个时候,我们就可以使用 Azure 的应用服务功能了。

首先,我们去申请一个 Azure 的账号,Azure 的官方网站为:Microsoft Azure[1],我们只需要像注册普通网站一样上去注册账号就可以了。Azure 注册以后,会送你12个月的免费云服务器,如下图所示。这个服务器你可以用来做很多事情。但我们今天用不到这个云服务器。

有了 Azure 账号以后,我们就需要安装一个叫做Azure-cli的东西,Azure-cli 的安装说明,可以参考:Install the Azure CLI | Microsoft Docs[2]。在这里根据你的操作系统查看安装说明即可。我以 macOS 为例,使用 Homebrew 安装:

  1. brew install azure-cli 

安装完成以后,我们需要使用 azure-cli 登录账号,输入:

  1. az login 

此时,会弹出一个网页,在网页上登录刚刚注册的账号即可完成登录。登录完成以后,网页显示如下内容:

终端窗口显示如下图所示:

接下来就要开始部署了。首先在终端中进入我们刚刚创建的 Flask 项目的根目录,确保有如下两个文件:requirements.txt和app.py。其中,requirements.txt 可以通过如下命令导出:

  1. pip freeze > requirements.txt 

此时,就体现出创建虚拟环境的重要性了,有了虚拟环境,那么导出来的只有这个项目需要的第三方库,不会把不相关的库也导出。

而app.py就是网站的入口程序了,也就是我们设置FLASK_APP环境变量指向的这个程序。

这两个东西就位以后,我们只需要执行如下一条命令:

  1. az webapp up --sku F1 --name kingname 

其中,--sku F1这个参数必须有,表示使用免费的定价策略。如果不加上这个参数,那么 Azure 会把你的网站部署到收费的策略中。

而--name kingname表示你的项目名字叫做kingname。整个部署的过程大概2分钟左右。运行效果如下图所示:

现在,我们访问:http://kingname.azurewebsites.net就可以看到刚刚部署的网站了:

接下来,我们要更新一下后端代码:

改好代码,想重新部署的时候,只需要再次执行:

  1. az webapp up 

就可以轻轻松松更新网站程序了。如下图所示:

Azure 的这个应用服务,原生支持 Django 和 Flask 网站的直接部署。如果你使用的是其他后端框架,或者你的程序不是一个网站,而是一个长期运行的普通 Python 脚本,那也没有关系,应用服务还提供指定启动命令的功能。具体操作,大家可以阅读它的官方文档:配置 Linux Python 应用 - Azure App Service | Microsoft Docs[3]. 大家也可以点击左下角“阅读原文”直接打开 Azure 应用服务的帮助文档。

参考资料

[1]Microsoft Azure: https://portal.azure.com/

[2]Install the Azure CLI | Microsoft Docs: https://docs.microsoft.com/zh-cn/cli/azure/install-azure-cli?WT.mc_id=DT-MVP-5003916

[3]配置 Linux Python 应用 - Azure App Service | Microsoft Docs: https://docs.microsoft.com/zh-cn/azure/app-service/configure-language-python#customize-startup-command?WT.mc_id=DT-MVP-5003916

本文转载自微信公众号「未闻Code  」,可以通过以下二维码关注。转载本文请联系未闻Code  公众号。

 

来源:未闻Code 内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯