# 实验室建设(新手入口) 这个仓库是一个家庭实验室(Homelab)实战记录: 从 0 开始搭 K3s 集群、配 Traefik 入口、跑常见服务(比如 GitLab、监控、首页面板),并配好排障脚本。 如果你是第一次看,不用担心,按下面顺序一步一步来就行。 ## 先知道这仓库怎么逛 - 文档主入口:`docs/00-00-构建总览.md` - 部署环境说明:`docs/00-04-部署环境说明.md`(节点布局、IP、版本等) - 脚本主入口:`scripts/README.md` - 验证状态一览:`docs/00-02-验证矩阵.md` 简单理解这三份入口的分工: - `README.md`:新手入口,看“要做什么、按什么顺序做”; - `00-00-构建总览.md`:文档导航,看“下一步该看哪一篇”; - `00-01-k3s-基础概念.md`:概念速查,看“不懂的 K3s/Traefik/NetworkPolicy 术语”; - `00-02-验证矩阵.md`:状态面板,看“哪些文档已经在真实环境跑通过”。 目录约定很简单: - 主文档都在 `docs/` - 脚本都在 `scripts/` - 脚本默认从仓库根目录执行(例如 `./scripts/...`) ## 新手推荐安装顺序(口语版) 1. **先看总览,别急着装** 打开 `docs/00-00-构建总览.md`,先把整体拓扑和机器分工看明白。 2. **装 K3s 集群(两种方式二选一)** - **自动化**:按 `docs/01-06-节点初始化-ansible-实践.md` 用 Ansible 一键完成 61~64 初始化 + server/worker 安装(已验证)。 - **手动**:先按 `docs/01-01-k3s-控制节点含traefik.md` 装控制节点 61,再按 `docs/01-02-k3s-工作节点.md` 加工作节点 62~64。 3. **确认节点 Ready** 执行 `kubectl get nodes`,确认所有节点 Ready。 4. **先用 nginx 做最小验证** 按 `docs/04-03-k3s-nginx-demo.md`,先打通“能访问”这件事,再上 nodejs。 5. **再做 nodejs、dashboard、acme** 对应看 `docs/04-01-k3s-nodejs-高级部署.md`、`docs/03-01-k3s-traefik-dashboard.md`、`docs/03-02-k3s-traefik-acme.md`。 6. **遇到 502/不通,直接用脚本排障** 去 `scripts/README.md` 抄命令,优先跑入口链路诊断和 firewalld 基线脚本。 ## 30 分钟快速通关(最小必做) 如果你时间有限,先只做这 4 步,跑通再扩展: 1. **装集群**:用 Ansible 按 `docs/01-06-节点初始化-ansible-实践.md` 一键安装(推荐);或按 `docs/01-01` + `docs/01-02` 手动装控制节点(61)与工作节点(62) 2. 执行 `kubectl get nodes`,确认节点 Ready 3. 按 `docs/04-03-k3s-nginx-demo.md` 部署 nginx 示例并访问一次 4. 若访问不通,按 `scripts/README.md` 先跑 firewalld 基线与入口链路诊断脚本 跑到这里就算「基础链路通关」。后面再继续 nodejs、dashboard、acme 会轻松很多。 如果你愿意,也可以顺手在 `docs/00-02-验证矩阵.md` 里,把对应文档的状态改成“已验证”,方便以后回顾。 ## 一句话建议 先把基础链路(61/62:80)跑通,再叠加业务;每做完一步都做一次 `curl` 验证,排障会轻松很多。