# API Management System **Repository Path**: nchenp/api-management-system ## Basic Information - **Project Name**: API Management System - **Description**: 基于Python开发的API管理系统 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-03-09 - **Last Updated**: 2026-03-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # API管理系统 基于 Flask + Vue 3 的多租户API管理平台,支持用户管理、社交功能、论坛、应用商店等模块。 ![系统截图](images/image1.png) ## 🌟 在线演示 **演示地址**: [https://cgw.plus](https://cgw.plus) **测试账号**: `admin` / `admin123` ## 🎯 核心功能 - **用户系统**: 注册登录、JWT认证、权限管理 - **社交功能**: 好友管理、私聊群聊、转账功能、未读消息 - **论坛系统**: 帖子评论、点赞收藏、关注功能 - **商城系统**: 商品订单、卡密系统、提现功能 - **应用商店**: 应用分类、版本管理 - **后台管理**: 菜单角色、管理员管理 ## 🛠 技术栈 **后端**: Flask 2.3 + SQLAlchemy 2.0 + MySQL 8.0 + Redis **前端**: Vue 3.5 + TypeScript + Vite 7 + Element Plus **部署**: Docker + Docker Compose + Nginx ## 🚀 快速部署 ### 一键部署(推荐) ```bash bash <(wget -qO- https://gitee.com/cgw0822/api-management-system/raw/master/deploy.sh) ``` 脚本自动完成:安装 Docker、拉取代码、配置环境、启动服务、可选配置域名和 HTTPS ### 手动部署 ```bash # 1. 安装依赖 yum install git -y bash <(wget -qO- https://xuanyuan.cloud/docker.sh) # 2. 拉取项目 git clone https://gitee.com/cgw0822/api-management-system.git cd api-management-system # 3. 配置环境 cp .env.example .env vim .env # 修改数据库密码和JWT密钥 # 4. 创建目录 mkdir -p uploads logs # 5. 登录镜像仓库(需注册轩辕账号) docker login rr1zpucdoadf61sqcc.xuanyuan.dev # 6. 拉取镜像 docker pull rr1zpucdoadf61sqcc.xuanyuan.run/library/redis:7-alpine && \ docker tag rr1zpucdoadf61sqcc.xuanyuan.run/library/redis:7-alpine redis:7-alpine docker pull rr1zpucdoadf61sqcc.xuanyuan.run/library/mysql:8.0 && \ docker tag rr1zpucdoadf61sqcc.xuanyuan.run/library/mysql:8.0 mysql:8.0 docker pull rr1zpucdoadf61sqcc.xuanyuan.run/library/python:3.10-slim && \ docker tag rr1zpucdoadf61sqcc.xuanyuan.run/library/python:3.10-slim python:3.10-slim docker pull rr1zpucdoadf61sqcc.xuanyuan.run/library/node:20-alpine && \ docker tag rr1zpucdoadf61sqcc.xuanyuan.run/library/node:20-alpine node:20-alpine docker pull rr1zpucdoadf61sqcc.xuanyuan.run/library/nginx:alpine && \ docker tag rr1zpucdoadf61sqcc.xuanyuan.run/library/nginx:alpine nginx:alpine # 7. 启动服务 docker compose -f docker-compose.bt.yml up -d --build # 8. 查看状态 docker ps ``` 访问 `http://服务器IP` 即可使用,默认账号 `admin` / `admin123` ## 🌐 域名配置 ### 方案一:同域名(推荐新手) 前端: `https://example.com`,后端: `https://example.com/api/` ```bash # 1. 修改 docker-compose.bt.yml 中 frontend 端口为 8080:80 # 2. 重启前端容器 docker stop api-frontend && docker compose -f docker-compose.bt.yml up -d frontend # 3. 创建 Nginx 配置 sudo vim /etc/nginx/sites-available/example.com ``` ```nginx server { listen 80; server_name example.com; location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } location /api/ { proxy_pass http://127.0.0.1:5000/api/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } client_max_body_size 10M; } ``` ```bash # 4. 启用配置 sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/ sudo nginx -t && sudo systemctl restart nginx # 5. 申请 SSL 证书 sudo apt install certbot python3-certbot-nginx -y sudo certbot --nginx -d example.com # 6. 更新前端配置并重新构建 # 编辑 frontend/.env.production,设置 VITE_API_BASE_URL=https://example.com cd frontend && docker build -t api-frontend:latest . docker stop api-frontend && docker compose -f ../docker-compose.bt.yml up -d frontend ``` ### 方案二:独立子域名(推荐生产) 前端: `https://example.com`,后端: `https://api.example.com` 配置 DNS 添加两条 A 记录(@ 和 api),然后分别创建 Nginx 配置并申请证书。详细步骤参考方案一。 ## 🔧 二次开发 ```bash # 修改代码后重新部署 docker compose -f docker-compose.bt.yml down docker compose -f docker-compose.bt.yml up -d --build # 只重新构建前端 cd frontend && docker build -t api-frontend:latest . docker stop api-frontend && docker compose -f ../docker-compose.bt.yml up -d frontend # 只重新构建后端 docker build -t api-backend:latest . docker stop api-backend && docker compose -f docker-compose.bt.yml up -d backend ``` ### 本地开发 ```bash # 后端 python -m venv venv && source venv/bin/activate pip install -r requirements.txt && python run.py # 前端 cd frontend && npm install && npm run dev ``` ## 📚 API文档 部署后访问 `http://你的域名/docs` 查看在线文档,支持智能搜索、参数说明、返回示例等。 **115个接口**涵盖认证、用户、论坛、社交、私信、通知、笔记、排行榜、应用商店等模块。 快速测试: ```bash # 健康检查 curl http://localhost:5000/health # 登录 curl -X POST http://localhost:5000/api/v1/auth/login \ -H "Content-Type: application/json" \ -d '{"username":"admin","password":"admin123"}' ``` ## ❓ 常见问题 **容器启动失败**: `docker compose -f docker-compose.bt.yml logs` 查看日志 **数据库连接失败**: 检查 `.env` 中的 `DATABASE_URL` 配置 **502 错误**: 检查后端容器状态 `docker ps` 和日志 `docker logs api-backend` **SSL 证书失败**: 确保 DNS 已生效 `nslookup example.com` 和 80 端口可访问 查看实时日志: ```bash docker logs -f api-backend docker logs -f api-frontend sudo tail -f /var/log/nginx/example-access.log ``` ## 🔒 安全建议 - 部署后立即修改管理员密码 - 只开放必要端口(22, 80, 443) - 生产环境必须使用 HTTPS - 定期备份数据库和上传文件 ## 📧 联系方式 **QQ 交流群**: 662762314 **Gitee**: https://gitee.com/cgw0822/api-management-system ## 💰 赞助打赏 如果这个项目对你有帮助,欢迎请作者喝杯咖啡 ☕
QQ收款码
QQ 收款
微信收款码
微信收款
支付宝收款码
支付宝收款
## 📄 License MIT License --- **部署完成后,记得修改默认密码!**