首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
RackPeek开发者上手手册:开发环境配置、justfile命令速查与第一个PR合入全流程
📅 2026/10/11 2:15:25
✍️ 爱科研究院
👁 阅读 3,247
【免费下载链接】RackPeekCLI tool to discover, manage, and document your IT infrastructure and home lab.项目地址https://gitcode.com/gh_mirrors/ra/RackPeek点击查看免费下载RackPeek 是一款面向家庭实验室Home Lab和小型 IT 基础设施的文档化与管理工具提供 CLI 命令行 Web UI 双形态所有数据只存一个 YAML 文件。本文是 RackPeek 开发环境配置与贡献流程的完整指南帮你从零搭好 .NET 10 开发环境、用 justfile 命令速查表高效构建测试并最终走完提交第一个 PR 的全流程。一、RackPeek 是什么技术栈一览RackPeek 帮你跟踪服务器、交换机、路由器、防火墙、接入点、UPS、桌面/笔记本、系统和服务以及它们之间的连接关系支持 YAML 编辑器、拓扑可视化、Ansible 库存和 SSH 配置导出等能力。它的所有状态都持久化在config/config.yaml单文件中没有数据库。层技术语言C#.NET 10net10.0必须CLISpectre.Console.CliWeb UIBlazor Server Blazor WASM 演示 Viewer持久化YAMLYamlDotNet、DocMigrator.Yaml测试xUnit Playwright Testcontainers构建运行器just命令唯一入口容器基于 aspnet 的 Docker 镜像端口 8080二、开发环境配置一键搭好 .NET 10 环境2.1 克隆仓库git clone https://gitcode.com/gh_mirrors/ra/RackPeek cd RackPeek2.2 安装核心依赖依赖用途安装方式.NET 10 SDK构建与运行硬性要求macOSbrew install --cask dotnet-sdkUbuntusudo apt install -y dotnet-sdk-10.0just所有开发命令的入口brew install justDocker运行 Web UI 与 E2E 测试安装 Docker Desktop 并启动守护进程Playwright 浏览器E2E 测试首次运行just e2e-setup自动安装 不想手动折腾仓库自带 devcontainer用 VS Code 一键打开即可获得装好全部依赖的环境见 docs/development/dev-setup.md。验证版本dotnet --version # 必须 ≥ 10.0.x否则先装 SDK just --list # 列出所有可用命令首次运行也会自动展示三、justfile 命令速查表项目约定一切工作流都通过just执行与 CI 行为保持一致。完整定义见 justfile。️ 构建类build命令作用just buildDebug 模式构建整个解决方案just build-releaseRelease 模式构建just build-cli [runtime]发布自包含单文件 CLI 二进制默认linux-x64just build-web构建 Web Docker 镜像rackpeek:ciE2E 前置 测试类test命令作用just test-cli快速 CLI 集成测试无需 Dockerjust e2e-setup一次性安装 Playwright CLI 浏览器just test-e2e自动先build-web再跑 Playwright 套件just citest-all本地全量验证PR 前必跑 运行与工具类run / utility命令作用just run-docker构建并启动容器Web UI 位于http://localhost:8080just rpk [args]直接运行 Debug 构建出的 CLI如just rpk servers listjust clean清理bin/objjust docker-push version多架构发布镜像到仓库四、第一次跑起来3 步验证环境第 1 步构建 CLIjust build第 2 步用本地 CLI 记录一台服务器just rpk servers add node01 just rpk servers tree node01第 3 步启动 Web UIjust run-docker # 打开 http://localhost:8080看到资源列表和拓扑图说明环境完全就绪。CLI 的完整命令树参考自动生成的 docs/Commands.md 与 docs/CommandIndex.md。五、动手改代码前先知道代码放哪仓库结构约定很清晰详见 AGENTS.md新 CLI 子命令→Shared.Rcl/Commands/ResourceKind/并在 Shared.Rcl/CliBootstrap.cs 注册新 UseCase→RackPeek.Domain/UseCases/实现IUseCase接口即可被反射自动注册新资源类型→ 领域模型 YAML 迁移 Razor 页面 Web 路由全套配套YAML 结构变更→ 必须升级schemas/vN/、新增前向迁移、补充Tests/TestConfigs/vN/测试夹具两条硬性代码规范警告即错误TreatWarningsAsErrorstrue见 Directory.Build.props一个未用变量就能挂掉整个构建别用#pragma warning disable绕过直接修掉。提交前必须格式化CI 第一步就是dotnet format --verify-no-changes格式不符会最先失败dotnet format六、测试哲学在系统边缘测试docs/development/testing-guidelines.md 的核心原则是黑盒集成测试优先CLI 测试Tests/驱动真实CommandApp断言精确的 stdout 输出 落盘的 YAML 副作用快且无需 DockerE2E 测试Tests.E2e/Testcontainers 拉起真实 Docker 镜像 Playwright 驱动 Web UI每个页面都有对应 Page Object ModelTests.E2e/PageObjectModels/E2E 测试必须独立、幂等、自清理用Guid.NewGuid()生成唯一资源名测完删掉just test-cli # 日常开发迭代跑这个 just ci # PR 前全量验证七、第一个 PR 合入全流程完整流程见 docs/development/contribution-guidelines.md浓缩为 6 步先找/开 Issue搜索已有 Issue没有就先创建一个与核心维护者确认方案再动手设计讨论优先用 Issue 而非聊天群小而聚焦一个 PR 只解决一个问题大 PR 会拖慢评审以 Draft 状态开启 PR本地全绿dotnet format干净 just ci通过且没有遗留调试代码尤其注意 Tests.E2e/Infra/PlaywrightFixture.cs 中的Headless false必须还原移出 Draft在 PR 正文粘贴 Checklist已关联 Issue方案已获认可PR 小而聚焦CLI 测试本地通过E2E 测试本地通过行为被测试覆盖YAML 迁移已定义若持久化结构有变化等待 CI 三阶段流水线format→cli-tests→webui-tests全绿即进入评审合入。功能分支默认目标分支为staging发布流向staging → main。八、新手常踩的 3 个坑坑现象解决Playwright 浏览器缓存失效升级Microsoft.Playwright包后所有 E2E 快速失败Executable doesnt exist at .../chromium_headless_shell-NNNN每个 Playwright 版本绑定特定 Chromium 构建重新just e2e-setup忘记重建 Web 镜像改了RackPeek.Web/Domain/Shared.Rcl后 E2E 结果不符预期just test-e2e会先自动build-web手动跑dotnet test前需先just build-webYAML 变更不做迁移老版本config.yaml无法读取按schemas/v1~v3的模式升级版本号迁移代码放在RackPeek.Domain/Persistence/Yaml/并附迁移测试写在最后从git clone到just ci全绿RackPeek 的开发体验被 justfile 收敛成了寥寥几条命令build → test-cli → format → PR。建议你的第一个 PR 从文档勘误或一个聚焦的小功能开始——读完本文、跑通第三章的验证流程你就可以在 Issue 区认领任务开始合入你的第一个 PR 了 延伸阅读docs/development/dev-setup.md环境配置、docs/development/dev-cheat-sheet.md构建/发布速查、docs/development/contribution-guidelines.mdPR 规范、docs/development/testing-guidelines.md测试哲学赞分享【免费下载链接】RackPeekCLI tool to discover, manage, and document your IT infrastructure and home lab.项目地址https://gitcode.com/gh_mirrors/ra/RackPeek点击查看免费下载相关推荐Dash 开发者命令行手册环境搭建、构建、测试与代码检查全流程指南Dash 开发者命令行手册环境搭建、构建、测试与代码检查全流程指南 导读 本文是 Dash 开源仓库Python 数据可视化应用框架为开发者整理的一站式命前端后端数据可视化如何快速部署Douban CODE5分钟搭建私有代码托管平台如何快速部署Douban CODE5分钟搭建私有代码托管平台 Douban CODE是一个功能强大的私有代码托管平台让团队可以轻松管理代码仓库、协作开发和跟后端开发工具Wekan开发环境一键配置教程新手快速上手指南Wekan开发环境一键配置教程新手快速上手指南 想要深入探索开源看板工具Wekan的强大功能掌握完整的开发环境搭建流程是开启定制化开发的第一步。本教程将带领后端前端协同办公创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/10/11 2:10:24
深秋车间手记:伺服电机后的编码器,为什么屏蔽层必须单端接大地
2026/10/11 2:10:24
滚动轴承故障诊断:IGWO+SVM参数寻优实战与避坑指南
2026/10/11 2:10:24
别再问我“大数据能算命吗”:一个统计学女架构师的技术大实话
2026/10/11 3:05:28
云智变AI问卷设计实测:你需要的不是一个“扩写器”,而是一台“翻译器”
2026/10/11 3:05:28
【2025-05】Flow-GRPO:ODE到SDE转换06:Score-based SDE Diffusion【评分函数神经网络sᶿ(x,t)=∇ₓlogpₜ(x):梯度方向】
2026/10/11 3:05:28
同学录系统JavaWeb期末项目实战:环境搭建、功能复现与避坑指南
2026/10/11 3:05:28
从Markdown到API草稿箱:跨平台文章同步的实用流水线
2026/10/11 3:05:28
GESP C++四级真题解析:递归分治与程序阅读的备考要点
2026/10/11 3:00:28
Spark分区器详解:从内置分区到自定义Partitioner,彻底解决数据倾斜
2026/10/11 0:00:10
流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南
2026/10/11 0:00:10
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别
2026/10/11 0:00:10
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容
2026/10/11 0:00:10
流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南
2026/10/11 0:00:10
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别
2026/10/11 0:00:10
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容
2026/10/10 3:41:56
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
2026/10/10 3:41:54
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026/10/9 11:36:17
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)