schnmnty1/OpsAcademy

GitHub: schnmnty1/OpsAcademy

OpsAcademy 是一个基于场景模拟的重大事件管理培训平台,帮助 IT 运维团队在无风险的沉浸式环境中练习生产事故响应与决策能力。

Stars: 1 | Forks: 0

# OpsAcademy ![Next.js](https://img.shields.io/badge/Next.js-16-black) ![React](https://img.shields.io/badge/React-19-61DAFB) ![TypeScript](https://img.shields.io/badge/TypeScript-5-3178C6) ![Supabase](https://img.shields.io/badge/Supabase-Backend-3ECF8E) ![Status](https://img.shields.io/badge/Status-Public_Beta-orange) ![License](https://img.shields.io/badge/License-Private-red) 🚀 **公测版 (Public Beta)** **在线演示:** https://ops-academy.vercel.app **GitHub 仓库:** https://github.com/schnmnty1/OpsAcademy ## 概述 OpsAcademy 是一个互动式培训平台,专为重大事件经理、SRE、IT 运维团队、NOC 工程师和服务管理专业人员设计。 与传统的基于测验的学习不同,OpsAcademy 将参与者置于真实的生产宕机场景中,每一个决策都会影响事件的结果。 参与者将扮演事件指挥官的角色,分析实时事件信息,协调利益相关者沟通,在压力下做出运维决策,并在事件结束后收到结构化的绩效反馈。 该平台旨在通过沉浸式、可重复且无风险的事件模拟,帮助组织提高运维准备度。 ## 为什么选择 OpsAcademy? 重大事件是 IT 组织可能面临的最关键事件之一。 当生产系统发生故障时,事件负责人必须: - 快速做出高影响决策 - 协调多个技术团队 - 与高管和利益相关者进行沟通 - 在技术恢复与业务影响之间取得平衡 - 在压力下保持准确的事件沟通 大多数组织仅在真实的系统宕机期间才会培养这些技能。 OpsAcademy 提供了一个安全的环境,专业人员可以在这里反复练习事件响应,而无需面对真实的生产事件。 ## 核心功能 - 互动式重大事件模拟 - 四个完整的生产事件场景 - 决策驱动的游戏玩法(非基于测验) - 实时指挥与利益相关者互动 - 由 Supabase 提供支持的评估跟踪 - 绩效评分与指挥汇报 - 部署在 Vercel 上的公测版 (Public Beta) - 现代化的 Next.js + TypeScript 架构 ## 当前版本 | 版本 | 状态 | |----------|--------| | **v1.0.0-beta** | 公测版 (Public Beta) | 当前版本包含: - ✅ 四个完整的模拟场景 - ✅ 评估跟踪 - ✅ 绩效评分 - ✅ 指挥汇报 - ✅ 管理员分析仪表板 - ✅ CSV 导出 - ✅ 生产环境部署 # 产品预览 ![主页](https://static.pigsec.cn/wp-content/uploads/repos/cas/65/657d82b4120e3a6d2291c119f294938ac5c490ee814741308d549f57c03515c1.png) ![模拟目录](https://raw.githubusercontent.com/schnmnty1/OpsAcademy/main/docs/images/catalog.png) ![事件简报](https://raw.githubusercontent.com/schnmnty1/OpsAcademy/main/docs/images/briefing.png) ![模拟进行中](https://raw.githubusercontent.com/schnmnty1/OpsAcademy/main/docs/images/simulation.png) ![事件总结与结果](https://raw.githubusercontent.com/schnmnty1/OpsAcademy/main/docs/images/results.png) # 模拟场景目录 | ID | 模拟场景 | 类别 | 难度 | 状态 | |----|------------|----------|------------|--------| | SIM-001 | 银行业生产系统宕机 | 银行业 | 中级 | ✅ 可游玩 | | SIM-002 | AWS 生产系统宕机 | 云基础设施 | 高级 | ✅ 可游玩 | | SIM-003 | Microsoft 365 全球事件 | SaaS / 协作 | 中级 | ✅ 可游玩 | | SIM-004 | 零售支付网关故障 | 零售 / 支付 | 初级 | ✅ 可游玩 | # 运作方式 1. 打开模拟目录。 2. 选择一个场景。 3. 查看事件简报。 4. 完成参与者信息登记。 5. 开始模拟。 6. 分析事件。 7. 做出指挥决策。 8. 协调利益相关者沟通。 9. 完成事件处理。 10. 查看您的指挥汇报和评估得分。 # 技术栈 | 层级 | 技术 | |------|------------| | 前端 | Next.js 16 | | UI | React 19 | | 语言 | TypeScript | | 样式 | Tailwind CSS 4 | | 后端 | Supabase | | 数据库 | PostgreSQL | | 验证 | Zod | | 部署 | Vercel | # 项目结构 ``` app/ components/ data/ docs/ lib/ public/ supabase/ types/ ``` # 快速开始 ``` git clone https://github.com/schnmnty1/OpsAcademy.git cd OpsAcademy ``` 在运行应用程序之前,请使用 `.env.example` 创建一个 `.env.local` 文件。 ``` npm install npm run dev ``` 打开: http://localhost:3000 # 环境变量 使用 `.env.example` 创建一个 `.env.local` 文件。 | 变量 | 用途 | |----------|---------| | NEXT_PUBLIC_SUPABASE_URL | 公开的 Supabase 项目 URL | | SUPABASE_SERVICE_ROLE_KEY | 服务端对 Supabase 的访问权限 | | ADMIN_USERNAME | 管理员仪表板用户名 | | ADMIN_PASSWORD | 管理员仪表板密码 | | ADMIN_SESSION_SECRET | 用于签署管理员会话的密钥 | # 部署 OpsAcademy 部署在 **Vercel** 上,并使用 **Supabase** 作为后端服务。 生产环境: https://ops-academy.vercel.app # 架构 ``` Browser │ ▼ Next.js App Router │ ┌───────────────┴───────────────┐ │ │ ▼ ▼ Simulation Pages Admin Dashboard │ │ └───────────────┬───────────────┘ ▼ API Routes │ ▼ Supabase Database ``` OpsAcademy 使用 Next.js App Router 来提供公共模拟体验和管理仪表板。评估数据持久化存储在 Supabase 中,同时服务器端 API 路由负责处理评估跟踪、评分、分析和管理。 # 路线图 OpsAcademy 计划推出的后续改进包括: - AI 驱动的利益相关者 - 动态分支场景 - 基于团队的模拟 - 企业级身份验证 (SSO) - 组织管理 - 认证路径 - 高级分析 - 排行榜 - 自定义场景构建器 # 创始人 **Sachin Verma** 创始人兼开发者 — OpsAcademy GitHub: https://github.com/schnmnty1 仓库: https://github.com/schnmnty1/OpsAcademy 在线演示: https://ops-academy.vercel.app 创建 OpsAcademy 旨在帮助 IT 运维专业人员通过逼真、可重复的生产模拟来培养实用的事件管理技能。 # 许可证 该项目目前为私有项目。 版权 © Sachin Verma。 保留所有权利。
标签:IT运维管理, React, Supabase, Syscalls, 测试用例, 自动化攻击, 运维