fastapi_sqlalchemy_mysql
fastapi_sqlalchemy_mysql copied to clipboard
fastapi 基础脚手架, fastapi + pydantic2 + sqlalchemy2 + alembic + mysql + redis
FastAPI SQLAlchemy MySQL
[!TIP] 此仓库是我们构建的 FastAPI 基础架构便捷版,完整版请查看: fastapi_best_architecture
特征
- [x] FastAPI
- [x] Async design
- [x] Restful API
- [x] SQLAlchemy 2.0
- [x] Pydantic 2.0
- [x] Docker
- [ ] ......
本地开发
- Python 3.10+
- Mysql 8.0+
- Redis 推荐最新稳定版
-
安装依赖项
pip install -r requirements.txt
-
创建一个数据库
fsm
, 选择 utf8mb4 编码 -
安装启动 Redis
-
创建一个
.env
文件touch .env cp .env.example .env
-
按需修改配置文件
core/conf.py
和.env
-
数据库迁移 alembic
# 生成迁移文件 alembic revision --autogenerate # 执行迁移 alembic upgrade head
-
执行 main.py 文件启动服务
-
浏览器访问: http://127.0.0.1:8000/api/v1/docs
Docker
[!WARNING]
默认端口冲突:8000,3306,6379
建议在部署前关闭本地服务:mysql,redis...
-
进入
docker-compose.yml
文件所在目录,创建环境变量文件.env
cd deploy/docker-compose/ cp .env.server ../../.env
-
执行一键启动命令
docker-compose up -d --build
-
等待命令自动完成
-
浏览器访问:http://127.0.0.1:8000/api/v1/docs
互动
赞助
如果此项目能够帮助到你,你可以赞助作者一些咖啡豆表示鼓励::coffee: Sponsor :coffee:
许可证
本项目根据 MIT 许可证的条款进行许可