logo
0
0
Login

EdgeOne多租户管理平台

一个基于React + Node.js的腾讯云EdgeOne多租户管理平台,支持多账户管理、域名管理、SSL证书管理等功能。

🚀 项目特性

核心功能

  • 多账户管理 - 支持多个腾讯云EdgeOne账户的统一管理
  • 域名管理 - EdgeOne站点和域名的集中管理
  • SSL证书管理 - 证书状态监控、自动续期提醒
  • 用户权限控制 - 基于角色的访问控制(RBAC)
  • 监控面板 - 实时数据统计和可视化展示
  • 多租户隔离 - 完整的数据安全隔离机制

技术特性

  • 前后端分离 - React前端 + Node.js后端
  • TypeScript - 全栈TypeScript开发
  • 现代UI - 基于shadcn/ui的现代化界面
  • 安全认证 - JWT认证 + 数据加密存储
  • API集成 - 腾讯云EdgeOne API完整集成
  • 响应式设计 - 支持桌面和移动端访问

🏗️ 技术架构

前端技术栈

  • React 18 - 现代化React框架
  • TypeScript - 类型安全的JavaScript
  • Vite - 快速的构建工具
  • shadcn/ui - 现代化UI组件库
  • Tailwind CSS - 实用优先的CSS框架
  • React Router - 客户端路由
  • Axios - HTTP客户端

后端技术栈

  • Node.js - JavaScript运行时
  • Express.js - Web应用框架
  • TypeScript - 类型安全开发
  • Prisma ORM - 现代化数据库工具
  • SQLite/PostgreSQL - 数据库支持
  • JWT - 身份认证
  • 腾讯云SDK - EdgeOne API集成

📦 项目结构

edgeone-platform/ ├── backend/ # 后端服务 │ ├── src/ │ │ ├── controllers/ # 控制器 │ │ ├── middleware/ # 中间件 │ │ ├── routes/ # 路由 │ │ ├── services/ # 服务层 │ │ ├── utils/ # 工具函数 │ │ └── app.ts # 应用入口 │ ├── prisma/ # 数据库模型 │ └── package.json ├── frontend/ # 前端应用 │ └── edgeone-frontend/ │ ├── src/ │ │ ├── components/ # 组件 │ │ ├── pages/ # 页面 │ │ ├── contexts/ # 上下文 │ │ ├── services/ # 服务 │ │ └── App.tsx # 应用入口 │ └── package.json └── README.md

🚀 快速开始

环境要求

  • Node.js >= 18.0.0
  • npm >= 8.0.0
  • 腾讯云EdgeOne账户

1. 克隆项目

git clone <repository-url> cd edgeone-platform

2. 后端设置

cd backend # 安装依赖 npm install # 配置环境变量 cp .env.example .env # 编辑 .env 文件,填入必要的配置 # 初始化数据库 npx prisma migrate dev npx prisma generate # 启动开发服务器 npm run dev

3. 前端设置

cd frontend/edgeone-frontend # 安装依赖 npm install # 启动开发服务器 npm run dev

4. 访问应用

🔧 配置说明

后端环境变量 (.env)

# 数据库 DATABASE_URL="file:./dev.db" # JWT配置 JWT_SECRET="your-jwt-secret-key" JWT_EXPIRES_IN="7d" # 加密密钥 ENCRYPTION_KEY="your-32-byte-hex-encryption-key" # 服务器配置 PORT=3000 NODE_ENV="development"

前端环境变量 (.env)

# API服务器地址 VITE_API_URL=http://localhost:3000/api # 应用配置 VITE_APP_NAME=EdgeOne管理平台 VITE_APP_VERSION=1.0.0

📚 API文档

认证接口

  • POST /api/auth/login - 用户登录
  • POST /api/auth/register - 用户注册
  • POST /api/auth/refresh - 刷新令牌

账户管理

  • GET /api/accounts - 获取账户列表
  • POST /api/accounts - 创建账户
  • PUT /api/accounts/:id - 更新账户
  • DELETE /api/accounts/:id - 删除账户
  • POST /api/accounts/:id/test - 测试连接
  • POST /api/accounts/:id/sync - 同步数据

站点管理

  • GET /api/sites - 获取站点列表
  • GET /api/sites/:id - 获取站点详情
  • POST /api/sites/:id/sync - 同步站点

证书管理

  • GET /api/certificates - 获取证书列表
  • POST /api/certificates/:id/renew - 续期证书

🔒 安全特性

数据安全

  • 加密存储 - 敏感数据AES-256-GCM加密
  • JWT认证 - 无状态身份验证
  • 权限控制 - 基于角色的访问控制
  • 多租户隔离 - 完整的数据隔离机制

API安全

  • 请求验证 - 完整的输入验证
  • 错误处理 - 安全的错误信息处理
  • 操作审计 - 完整的操作日志记录
  • 连接测试 - 实时API连接验证

🎨 界面设计

设计风格

  • Material Design - 现代化企业级界面
  • 深蓝色主色调 - 专业稳重的视觉风格
  • 青色强调色 - 科技感的点缀色彩
  • 卡片式布局 - 清晰的信息层次
  • 响应式设计 - 适配各种屏幕尺寸

核心页面

  • 仪表板 - 数据概览和统计图表
  • 账户管理 - 腾讯云账户的增删改查
  • 站点管理 - EdgeOne站点列表和配置
  • 证书管理 - SSL证书状态和续期管理
  • 用户管理 - 系统用户和权限管理
  • 操作日志 - 系统操作记录和审计

🚀 部署指南

生产环境部署

  1. 构建前端

    cd frontend/edgeone-frontend npm run build
  2. 构建后端

    cd backend npm run build
  3. 配置生产环境变量

  4. 启动服务

    npm start

Docker部署

# 构建镜像 docker build -t edgeone-platform . # 运行容器 docker run -p 3000:3000 -p 5173:5173 edgeone-platform

📈 开发状态

已完成功能 ✅

  • 项目初始化和环境配置
  • 后端API框架搭建和数据库设计
  • 用户认证和权限管理系统
  • 腾讯云EdgeOne API集成
  • 账户管理功能
  • [-] 域名管理功能
  • [-] SSL证书管理功能
  • 前端React项目和路由配置
  • UI组件库集成和基础布局
  • [*] 仪表板页面开发
  • [-] 各功能页面开发

进行中功能 🔄

  • 前后端联调和功能测试
  • 用户管理页面完善
  • 操作日志页面完善

待开发功能 ⏳

  • 部署配置和生产环境优化
  • 监控告警功能
  • 批量操作功能
  • 数据导出功能

🤝 贡献指南

  1. Fork 项目
  2. 创建功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开 Pull Request

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

📞 联系方式

如有问题或建议,请通过以下方式联系:


© 2024 EdgeOne管理平台. 保留所有权利.

About

腾讯云EdgeOne多租户管理平台

Language
TypeScript69.6%
JavaScript20.2%
Markdown8.2%
CSS0.9%
Others1.1%