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

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

摄影:产品经理
平安夜的热红酒

有时候,我们使用 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 安装:

brew install azure-cli

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

az login

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

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

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

pip freeze > requirements.txt

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

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

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

az webapp up --sku F1 --name kingname

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

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

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

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

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

az webapp up

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

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

目录
相关文章
|
2月前
|
JavaScript 前端开发 API
Python和Vue:构建动态网站的最佳伙伴
【4月更文挑战第10天】在数字时代,Python和Vue.js成为构建互动性网站的理想组合。Python以其强大的后端处理和丰富的库(如Django和Flask)支持高效开发,而Vue.js则凭借其轻量级、数据驱动的前端框架提供直观界面。两者结合,实现前后端分离,双向数据绑定,高效API交互,以及高度灵活性和可扩展性。庞大的社区和生态系统为开发过程提供资源支持,优化用户体验。这种技术栈适合从简单的博客平台到复杂应用的各类项目,为企业带来竞争优势。
|
2月前
|
前端开发 关系型数据库 MySQL
基于python+mysql的宠物领养网站系统
基于python+mysql的宠物领养网站系统
59 2
|
2月前
|
数据采集 数据可视化 数据挖掘
Python爬虫实战:抓取网站数据并生成报表
本文将介绍如何使用Python编写简单而高效的网络爬虫,从指定的网站上抓取数据,并利用数据分析库生成可视化报表。通过学习本文内容,读者将能够掌握基本的爬虫技术和数据处理方法,为日后开发更复杂的数据采集与分析工具打下坚实基础。
|
2月前
|
Python
Python采集网站随机header
Python采集网站随机header
45 1
|
2月前
|
存储 供应链 安全
谷歌、微软、Meta?谁才是 Python 最大的金主?
谷歌、微软、Meta?谁才是 Python 最大的金主?
31 1
|
2月前
|
Python
Python 采集某网站音乐
Python 采集某网站音乐
22 0
|
2月前
|
XML 数据采集 数据挖掘
python教程|如何批量从大量异构网站网页中获取其主要文本?
今天我们就一起来看看,如何利用Python从大量异构网站中批量获取其主要文本的方法。
|
20天前
|
存储 数据挖掘 索引
Python streamlit框架开发数据分析网站并免费部署
使用Python的Streamlit框架,开发了一个在线数据分析工具,替代Excel查看设备温度CSV数据。通过pandas读取数据,matplotlib绘制图表。程序处理CSV,提取所需列,计算最大最小平均值,用户可多选查看特定数据。[GitHub](https://github.com/yigedaigua/MGHB)上有完整代码,应用已部署至Streamlit Cloud。
|
11天前
|
程序员 Python
老程序员分享:python爬取电影网站信息并写入文件
老程序员分享:python爬取电影网站信息并写入文件
|
2月前
|
数据采集 机器学习/深度学习 供应链
python基于评论情感分析和回归、arima销量预测的购物网站选品
python基于评论情感分析和回归、arima销量预测的购物网站选品