4 个免费的 Python Web 应用托管平台,包含分步说明
各位开发者们好,我是 Yash Makan。今天的文章将探讨 4 个可以托管 Flask 或 Django 应用的平台。如果您已经使用 Python 完成了网站或 API 开发,或者计划创建一个,那么这篇文章非常适合您。另外,请务必读到最后,因为在文章最后,我将逐步讲解将您的 Web 应用上传到互联网的完整流程。事不宜迟,让我们开始吧!
什么是托管平台?为什么我需要它?
好吧!如果你开发过 Web 应用,那么你可能知道,所有这些应用,无论是用 Django 还是 Flask 开发的,都是在本地主机上运行的。本地主机是一个你可以运行代码并在浏览器中查看的地方。但是,当你完成 Web 应用的开发后,或许是时候将你的应用发布到互联网上了,这样任何人都可以访问你的网站。本地部署的 Web 应用你可以查看,但你的朋友却无法看到你精彩的作品。针对这种情况,你有两种选择。
- 一种是使用 ngrok 将您的本地主机连接到隧道。ngrok 将您的本地主机暴露到互联网上,以便每个人都可以通过它提供的特定 URL 访问它。如果您希望您的网站 24x7 全天候运行,我不建议使用这种方式,因为您必须全天候运行您的程序,而这并非事实。但如果您只是想在一段时间内共享您的本地主机,并且不希望连接处于连接状态,那么您可以选择这种方法。更多信息,您可以阅读Abayomi Ogunnusi 的文章。
- 第二种方法是将你的代码托管到其他人的服务器上。这个其他人的服务器就是我们所说的托管平台。这些服务器会在某个特定的域名下全天候运行你的代码。所以,如果你想要托管,以下是我推荐的最佳选择。
下面所有链接都根据其爱好或免费包进行比较
0. Vercel ↗(最后有完整的分步程序)
✅ Git 连接
✅ 自定义域名
✅ 可用 CLI
✅ 部署和管理多个版本
✅ 轻松部署
✅ HTTPS/SSL
无项目限制
每 1 小时部署 32 次
1. qovery ↗
✅ Git 连接并自动部署
✅ Discord 社区支持出色
✅ HTTPS/SSL
✅ 内置数据库集成,如 PostgreSQL、MySQL
✅ 可用 CLI
最多 3 个项目,100 个应用程序
根据我的个人经验,在 qovery 上部署 Web 应用程序有点棘手
每月 100 次部署
2. pythonanywhere ↗
✅ Git 连接
✅ 轻松部署
✅ HTTPS/SSL
CLI不可用
没有自定义域
您无法部署和管理 Web 应用的多个版本
每个帐户可以创建一个项目
由于存在互联网出站,因此您将无法抓取您想要的大多数网站。
3.赫罗库↗
✅ Git 连接和部署
每月 550-1,000 小时测功机运行
5 个应用程序(未经验证的帐户)和最多 100 个应用程序(已验证的帐户)
当没有检测到活动时,Web 应用进入休眠状态
部署起来并不像列表中的其他方法那么容易
我的建议
Vercel
对我来说绝对是赢家。它免费提供我想要的一切,我也会向你们推荐 Vercel。
如何在 vercel 上部署我的 flask web 应用程序?
- 从https://nodejs.org/en/下载 node,并确保可以从终端访问 npm
npm -v
- 使用 下载 vercel cli
npm i -g vercel
。请参阅此处 - 添加
requirements.txt
包含您使用过的所有 Python 包的文件。 - 在https://vercel.com/上创建你的帐户。非常简单……
- 添加
vercel.json
文件并添加以下内容(这里我使用 app.py 作为我的主文件)
{
"version": 2,
"builds": [
{
"src": "*.py",
"use": "@liudonghua123/now-flask"
}
],
"routes": [
{
"src": "(.*)",
"dest": "app.py"
}
]
}
-
确保你的项目看起来像这样
-
在项目根目录下打开终端。
-
输入以下命令
-
好了,现在就完成了。访问vercel.com并打开你的项目。点击访问按钮,你的网站就上线了。
-
稍后更新只需将
vercel --prod
您的代码推送到生产级别即可。
结论
瞧,只需 2 到 5 分钟,即可轻松免费将您的 Web 应用上传到网络。在这篇博文中,我使用了来自此代码库的 Web 模板。如果您需要完整代码,请访问
我已经将网站部署到https://vercel-python-ten.vercel.app/了,如果你想查看的话。希望你喜欢我的博客,如果这篇文章对你有任何帮助,请点赞并收藏。也请分享这篇文章给你的朋友,让他们也能学到新东西(别太自私……)。如果可以的话,你也可以在Twitter上关注我,这样我们就可以在那里讨论更多技术话题了。希望以后还能再次见到你,再见!