在线站点:启用 GitHub Pages 后访问 https://wlj572831.github.io/-AIOps-Atlas/
这是一个零依赖、可离线使用的中文智能运维学习知识库,以 Ubuntu Server 24.04 LTS 为实验基准,覆盖 Linux、网络、服务运维、容器、Kubernetes、SRE、可观测性、AIOps、LLM 运维助手与 GPU 推理基础设施。它强调建立可验证的排障证据链,不把命令清单当作能力本身。
每个完整条目包含:
- Ubuntu 安装与准备;
- 关键配置文件和数据目录;
- 按机制分组的核心知识清单;
- 基础命令和 Ubuntu 扩展命令;
- 典型故障现象与检查路径;
- 动手任务和学完验收标准;
- 对应的事实来源与延伸资料。
每个主题同时提供一份“岗位能力手册”,固定包含八个栏目:
- 知识点说明:围绕真实机制与故障场景列出需要掌握的能力;
- 常用命令:可直接复制,强调观察和验证;
- 配置示例:Ubuntu、systemd、Nginx、Docker、Kubernetes、Prometheus 等真实格式;
- 典型故障:症状和常见原因;
- 排查流程:从影响确认、证据收集到修复验证和复盘;
- 实战任务:故障注入、报告和 Runbook 沉淀;
- 面试问题:问题与回答要点;
- 简历表达:不虚构经历和指标的项目描述模板。
例如 Kubernetes 工作负载专题不是只解释 Pod 定义,而是覆盖 CrashLoopBackOff、ImagePullBackOff、OOMKilled、三类探针、ConfigMap/Secret、资源限制和标准排查报告。
点击主题卡片后进入知识工作台,而不是连续滚动的窄弹窗:
- 桌面端使用左侧栏目导航和右侧内容面板;
- 移动端使用全屏窗口和横向栏目标签;
- 一次只显示一个栏目,降低长文认知负担;
- 支持上一主题、下一主题、先修知识和继续学习导航;
- 新增交互式技能图谱,以节点和连线展示前置依赖、后续技能、相关联、知识交叉、典型场景和项目依赖;支持关系/阶段筛选、搜索、缩放、拖拽与知识条目联动;
- 栏目标签支持方向键、Home、End 键盘切换;
- 主题卡片直接显示知识点数、证据块数和能力内容完整度。
首页“今天,从哪里继续?”把知识库变成可持续推进的学习闭环:
- 主题支持“未开始 / 学习中 / 已掌握”三种状态;
- 首页汇总总体完成度、学习中主题和六阶段进度;
- 优先续接最近学习的主题,否则按先修关系推荐下一步;
- 进度仅写入当前浏览器的
localStorage,不上传、不要求账号; - “已掌握”应在完成实操和验收后使用,而不是把“看过”当成“会了”。
当前已经生成面向 RAG 的结构化语料层:每个证据块都有稳定 ID、标题路径、类型、意图、先修关系、相关主题、来源、版本、更新时间、质量标记和内容哈希。页面“RAG 检索”支持问题检索、内容类型/学习阶段过滤、证据路径展示,并可导出 JSONL。所有证据块仍处于待人工复核状态。
详细架构与向量数据库、混合召回、重排、上下文构建、LLM 引用和评测路线见 docs/RAG_ARCHITECTURE.md。在接入模型前仍应补充更多真实故障案例、版本差异和人工审核结果,避免模型把泛化模板当成生产事实。
页面中的“开源学习导航”把 GitHub 资源分成学习路线、渐进课程、练习题库、故障实验、官方课程大纲和官方文档。资源只以人工审核后的元数据、适用主题、建议任务和深链接接入,不镜像第三方正文。
- 路线类资源用于决定先后顺序和查漏,不作为生产配置依据。
- 项目官方或基金会官方文档用于核对技术事实、命令语义和版本差异。
- 社区练习与题库用于形成实验、口述和排障能力,答案需要再次验证。
- 每个知识主题的“来源与治理”面板会同时显示事实来源与匹配的 GitHub 学习资源;RAG JSONL 通过
learningRefs保留这两类来源的边界。
要求 Node.js 20 或更高版本。克隆仓库并启动本地静态服务:
git clone git@github.com:wlj572831/-AIOps-Atlas.git
cd -AIOps-Atlas
npm start然后访问 http://127.0.0.1:8765。也可以直接打开 index.html;本地服务主要用于获得稳定的资源加载和剪贴板体验。
运行完整验证:
npm test仓库已配置 GitHub Pages 自动部署:推送到 main 后先运行测试,再发布静态站点。首次使用需要在仓库 Settings → Pages 中将 Source 设为 GitHub Actions。
完整的本地运行、GitHub Pages、Nginx、其他静态托管平台和回滚步骤见 部署指南。
.
├── index.html # 页面入口
├── assets/ # 样式、界面逻辑与检索模块
├── data/ # 知识主题、图谱、手册与资源数据
├── docs/ # 架构、抽取器与部署文档
├── tests/ # 内容、图谱、检索与 UI 契约测试
├── .github/workflows/ # 质量检查与 Pages 部署
├── serve.mjs # 零依赖本地静态服务器
└── SOURCES.md # 招聘样本与资料来源
- 在搜索框输入多个词时执行 AND 检索,例如
kubernetes dns。 - 搜索范围包括标题、摘要、知识点、标签、练习命令和动手任务。
Ctrl+K聚焦搜索框。- 点击阶段标签过滤;点击卡片查看完整条目并复制命令。
- 每个主题都有
#topic=<id>深链接,可收藏或分享。
页面中的“JD 抽取”模块支持:
- 手动粘贴一份或多份 JD;多份文本使用独占一行的
---分隔; - 导入
.txt、.md、.markdown、.json文件,可一次选择多个; - JSON 可以是对象、对象数组,或包含
jobs/items数组;岗位文本字段支持description、jd、content、text、requirements; - 按基础运维、容器云、监控告警、日志链路、自动化运维、数据库/中间件、DevOps、AIOps / AI 工具分类;
- 统计技能提及次数、JD 覆盖率、命中别名和证据片段;
- 生成岗位能力矩阵、学习优先级以及“市场需求 → 知识点 → 学习任务 → 项目实践”映射;
- 导出 Markdown 报告和完整 JSON 数据。
所有分析均在浏览器本地完成,不会上传 JD 内容。
{
"jobs": [
{
"title": "云原生运维工程师",
"company": "示例公司",
"source": "manual",
"url": "https://example.com/job/1",
"description": "要求熟悉 Linux、Docker、Kubernetes、Prometheus 和 Python。"
}
]
}爬虫或招聘 API 不需要修改抽取引擎,只需注册适配器:
JDAnalyzer.registerSourceAdapter("example-api", {
async load(options) {
// 返回 [{ title, company, source, url, text }],或可被 parseJson 识别的数据。
return fetchJobsFromApi(options);
}
});
const documents = await JDAnalyzer.loadFromSource("example-api", options);
const report = JDAnalyzer.analyze(documents);- 先按“学习路线”完成依赖顺序,不要从 Kubernetes 命令背诵开始。
- 在可重建的实验环境执行相关命令,先写预期结果,再解释实际输出;不要盲目复制整段命令。
- 完成动手任务,保留操作记录、故障证据和复盘。
- 用三个贯穿实验组成作品集:Linux 故障诊断、Kubernetes 发布、可观测与告警降噪。
- 每两周回看岗位方向,根据目标岗位和当前短板调整学习顺序。
- 命令优先用于本地实验环境;带占位符的命令需替换后执行。
- 生产环境操作前必须确认上下文、权限、影响范围、回滚和审批。
- 岗位方向来自少量公开招聘样本的定性归纳,条形长度只表示相对学习优先级,不代表市场占比。
- 命令、默认值和支持矩阵会随版本变化;实际使用时应核对条目来源,并在目标版本中验证。
基础知识数据位于 data/knowledge.js,Ubuntu 深度内容按领域拆分在 data/ubuntu-*.js。按现有对象结构新增主题即可自动进入全文检索,无需修改界面代码。