返回列表 发布新帖
查看: 3|回复: 0

API管理系统(全新版本)

205

主题

0

回帖

617

积分

高级会员

积分
617
发表于 昨天 17:07 | 查看全部 |阅读模式
API管理系统基于 Flask + Vue 3 的多租户API管理平台,支持用户管理、社交功能、论坛、应用商店等模块。
🌟 在线演示演示地址: https://cgw.plus
测试账号: admin / admin123
项目地址Gitee: https://gitee.com/cgw0822/api-management-system
🎯 核心功能用户系统: 注册登录、JWT认证、权限管理社交功能: 好友管理、私聊群聊、转账功能、未读消息论坛系统: 帖子评论、点赞收藏、关注功能商城系统: 商品订单、卡密系统、提现功能应用商店: 应用分类、版本管理后台管理: 菜单角色、管理员管理
🛠 技术栈后端: Flask 2.3 + SQLAlchemy 2.0 + MySQL 8.0 + Redis
前端: Vue 3.5 + TypeScript + Vite 7 + Element Plus
部署: Docker + Docker Compose + Nginx
🚀 快速部署一键部署(推荐)bash <(wget -qO- https://gitee.com/cgw0822/api-management-system/raw/master/deploy.sh)
脚本自动完成:安装 Docker、拉取代码、配置环境、启动服务、可选配置域名和 HTTPS
手动部署# 1. 安装依赖yum install git -ybash <(wget -qO- https://xuanyuan.cloud/docker.sh)
# 2. 拉取项目git clone https://gitee.com/cgw0822/api-management-system.gitcd api-management-system
# 3. 配置环境cp .env.example .envvim .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-alpinedocker pull rr1zpucdoadf61sqcc.xuanyuan.run/library/mysql:8.0 && \docker tag rr1zpucdoadf61sqcc.xuanyuan.run/library/mysql:8.0 mysql:8.0docker pull rr1zpucdoadf61sqcc.xuanyuan.run/library/python:3.10-slim && \docker tag rr1zpucdoadf61sqcc.xuanyuan.run/library/python:3.10-slim python:3.10-slimdocker pull rr1zpucdoadf61sqcc.xuanyuan.run/library/node:20-alpine && \docker tag rr1zpucdoadf61sqcc.xuanyuan.run/library/node:20-alpine node:20-alpinedocker 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/
# 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.comserver { 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;}
# 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 -ysudo certbot --nginx -d example.com
# 6. 更新前端配置并重新构建# 编辑 frontend/.env.production,设置 VITE_API_BASE_URL=https://example.comcd 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 配置并申请证书。详细步骤参考方案一。
🔧 二次开发
# 修改代码后重新部署
docker compose -f docker-compose.bt.yml downdocker 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

本地开发
# 后端python -m venv venv && source venv/bin/activatepip install -r requirements.txt && python run.py
# 前端cd frontend && npm install && npm run dev
📚 API文档部署后访问
http://你的域名/docs 查看在线文档,支持智能搜索、参数说明、返回示例等。115个接口涵盖认证、用户、论坛、社交、私信、通知、笔记、排行榜、应用商店等模块。
快速测试:
# 健康检查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 端口可访问
查看实时日志:docker logs -f api-backenddocker logs -f api-frontendsudo tail -f /var/log/nginx/example-access.log
🔒 安全建议部署后立即修改管理员密码只开放必要端口(22, 80, 443)生产环境必须使用 HTTPS定期备份数据库和上传文件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright © 2001-2026 52线报网 版权所有 All Rights Reserved. |网站地图 闽ICP备19006036号-4
关灯 在本版发帖
扫一扫添加微信客服
返回顶部
快速回复 返回顶部 返回列表