参考:
- Python项目依赖包requirements.txt文件的生成与安装 - 莲(LIT) - 博客园:
- 第一章:腾讯云轻量应用服务器建站流程(前端)_腾讯云如何开通网页前端_ryder_yan的博客-CSDN博客:
- 宝塔上部署FastAPI的步骤和一些注意点 - 诗猿土豆 - 博客园:
1. 编写基于FastAPI的main.py文件
import uvicorn
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def sayHi():
return {"message":"Hello world!"}
# 启动uvicorn服务,默认端口8000,main对应文件名
if __name__ == '__main__':
uvicorn.run('main:app')
2. 生成main.py的requirement.txt文件
这里使用pipreqs生成。
- 安装pipreqs:pip install pipreqs
- 在main.py的所在的文件夹路径下执行:
pipreqs ./ --encoding=utf8
可以发现生成了requirement.txt文件:
3. 腾讯云购买轻量应用服务器
购买时选择使用应用模板和宝塔Linux面板:
4. 防火墙添加宝塔面板端口和FastAPI端口
进入服务器后台的防火墙:
按图添加规则,FastAPI的端口可以根据自己需要修改:
创建结果:
5. 查看宝塔面板信息
进入服务器后台的概要,找到远程登陆并点击"登录"按钮:
进入后点击登录按钮:
输入sudo /etc/init.d/bt default后回车:
可以看到宝塔面板的相关信息,可以复制保存一下,防止遗忘:
6. 登录宝塔面板,安装套件
浏览器打开刚才获取的外网面板地址,输入刚才获取的用户名和密码登录:
用户协议下拉到底,勾选同意用户协议,点击进入面板按钮:
登录宝塔账号(没有可以按照提示注册):
登录后提示关联腾讯云API密钥,点击图中标出的“点击查看”文字:
跳转后点击继续使用:
复制APPID、SecretId、SecretKey:
返回宝塔面板页面,粘贴复制的内容,点击关联API密钥:
出现弹窗,点击LNMP(推荐)下的一键安装:
耐心等待几个安装任务结束:
7. 上传FastAPI程序
进入宝塔面板文件目录下的根路径>www:
创建文件夹wwwpython:
进入wwwpython文件夹,将main.py和requirement.txt文件上传:
8. 安装插件
软件商店内搜索进程守护管理器,安装图中圈出的插件:
软件商店内搜索Python项目管理器,点击安装:
注意:后续操作如果莫名失败,可以考虑安装插件的其他版本。
9. 建立FastAPI项目
点击Python项目管理器的设置:
进入版本管理,选择自己FastAPI程序适用的Python版本下载:
等待下载完成后进入项目管理,点击添加项目,按照图中进行输入后点击确定按钮:
等待依赖安装完成,点击配置:
将配置中的worker_class = 'sync'
替换为worker_class = 'uvicorn.workers.UvicornWorker'
后点击确认:
点击重启:
10. 检查FastAPI部署情况
在腾讯云服务器的概览里可以找到公网ip:
进入http://公网ip:8081/docs可以发现部署成功:
如果没有出现,注意在宝塔面板中查看项目是否运行中: