零度星河
返回
发布于 更新于 阅读:0 评论:0

开源项目-python-admin-vben 后台管理系统

python-admin-vben python-admin-vben 后台管理系统,使用Python v3.13、FastAPI v0.124.2 基于 vue-vben-admin 5.0 版本,vue3 vite6 ant-design-vue typescript 语法开发高性能后台管理系统

python-admin-vben

python-admin-vben 后台管理系统,使用Python v3.13、FastAPI v0.124.2 基于 vue-vben-admin 5.0 版本,vue3 vite6 ant-design-vue typescript 语法开发高性能后台管理系统

安装依赖

  • 执行pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
  • 执行pip3 freeze > requirements.txt命令将项目依赖添加到requirements.txt中

接口文档

  • http://127.0.0.1:9990/docs 或 http://127.0.0.1:9990/redoc

项目结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
python-admin-vben/
├── apps/ # 业务应用核心
│ ├── generator/ # 简陋的model代码生成器模块
│ ├── modules/ # 业务模块集合
│ │ ├── sys/ # 系统基础模块
│ │ │ ├── basis/ # 系统基础功能
│ │ │ │ ├── crud/ # CURD 操作封装
│ │ │ │ ├── models/ # 数据库模型定义
│ │ │ │ ├── params/ # 请求参数校验模型
│ │ │ │ ├── routers/ # 接口路由定义
│ │ │ │ │ └── __init__.py # 当前接口路由定义导入
│ │ │ │ ├── schemas/ # 数据传输模型
│ │ │ ├── monitor/ # 系统监控模块
│ │ │ ├── scheduler/ # 定时任务模块
│ │ └── [其他业务模块]/ # 自定义业务模块(如订单/商品等)
│ └── app_router.py # 应用模块路由总入口
├── config/ # 配置中心
│ ├── .env # 环境变量配置
│ ├── .env.dev # 开发环境变量配置
│ ├── .env.docker # docker环境变量配置
│ ├── .env.prod # 生产环境变量配置
│ └── settings.py # 系统配置
├── core/ # 核心框架
│ ├── common/ # 通用业务逻辑
│ ├── constants/ # 全局常量
│ ├── framework/ # 框架扩展(中间件、认证等)
│ ├── utils/ # 工具函数库
├── lib/ # 第三方依赖库
├── docker/ # docker部署
│ ├── Dockerfile # 项目服务构建
│ ├── docker-compose.yml # docker-compose 部署编排
│ ├── script.sh # 部署以及操作命令脚本
├── main.py # 项目启动入口
└── requirements.txt # Python 依赖声明

sqlalchemy 参数速查表

参数 类型 说明 示例
primary_key bool 是否主键 primary_key=True
nullable bool 是否允许NULL nullable=False
unique bool 是否唯一 unique=True
index bool 是否创建索引 index=True
default 任意 Python默认值 default=0
server_default 字符串 数据库默认值 server_default='active'
onupdate 函数 更新时调用的函数 onupdate=datetime.utcnow
autoincrement bool/str 自动增长 autoincrement=True
doc str 文档字符串 doc='用户邮箱地址'
comment str 列注释 comment='创建时间'
key str Python属性名 key='user_name'
system bool 是否为系统列 system=False

Linux 部署项目

Docker 部署方式

  • 确保Docker以及docker-compose已经安装
  • 进入项目python-admin-vben/docker执行以下命令
  • 依次执行chmod +x script.sh、./script.sh命令,然后根据提示 输入 1,即可安装部署服务
  • 如果想用自己安装的mysql以及redis,在docker-compose.yml中注释掉redis、mysql部分内容,然后在config目录下修改.env.docker文件中对应的地址、端口号、密码即可

Systemd 服务文件部署方式

1
2
3
4
5
6
7
- 进入项目根目录
- 创建虚拟环境 python3 -m venv .venv
- 激活虚拟环境 source .venv/bin/activate
- 安装依赖 pip3 install -r requirements.txt
 
- 如果安装依赖提示 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager, possibly rendering your system unusable. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv. Use the --root-user-action option if you know what you are doing and want to suppress this warning
- 可以使用虚拟环境下的pip进行安装 ./.venv/bin/pip install -r requirements.txt,或者不使用root用户改用普通用户进行安装
  • 进入/etc/systemd/system目录创建 Systemd 服务文件 fastapi.service
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[Unit]
Description=fastapi service
After=network.target
 
[Service]
Type=simple
WorkingDirectory=/home/project/python-admin-vben
# 生产环境关键配置
Environment="ENV_FILE=prod"
 
ExecStart=/home/project/python-admin-vben/.venv/bin/python main.py
 
Restart=always
 
RestartSec=5
KillSignal=SIGINT
SyslogIdentifier=fastapi-identifier
User=root
 
[Install]
WantedBy=multi-user.target
  • /home/project改为实际部署目录

启动服务

1
2
3
systemctl daemon-reload
systemctl start fastapi
systemctl status fastapi

image

image

image

image

image

评论 (0)
暂无评论 来抢沙发吧~

目录

SpringWonderland

探索 Spring 生态的奇妙世界

2026-03-07 14:51

我的标签

随笔分类

归档

查看完整归档 →