发布时间:2026/8/25 9:20:26
贡献官方仓库终极清单:CapRover One Click Apps的validate、prettier与build全流程实战 贡献官方仓库终极清单CapRover One Click Apps的validate、prettier与build全流程实战【免费下载链接】one-click-appsCommunity Maintained One Click Apps (https://github.com/caprover/caprover)项目地址: https://gitcode.com/gh_mirrors/on/one-click-apps这个仓库是 CapRover One Click Apps 的社区官方仓库收录了几百个可一键部署的开源应用如 Jellyfin、Grafana、Gitea 等。本文带你完整走通validate 校验 → prettier 格式化 → build 构建三步流程从零到提交 PR让你用最短时间把一个一键应用贡献进官方仓库 ✅仓库结构一键应用都住在哪里整个仓库的目录非常直观理解它是贡献的第一步路径作用public/v4/apps/所有一键应用的 YAML 定义文件v4 格式public/v4/logos/每个应用对应的图标文件名必须与应用同名scripts/校验、迁移、构建脚本validate / migrate / buildcaptain-definition仓库自带部署文件用 nginx 托管构建产物package.json定义了validate_apps、formatter、build等 npm 命令一键应用 YAML 写法规范每个应用就是一个public/v4/apps/下的 YAML 文件参考最简单的示例 privatebin.yml核心结构如下文件第一行必须是captainVersion: 4services段CapRover 只解析image、environment、ports、volumes、depends_on、hostname、command、cap_add这几个参数其余会被忽略caproverExtra段CapRover 专属配置常用containerHttpPort非 80 端口时必写、notExposeAsWebApp数据库等内部服务设为truecaproverOneClickApp段包含variables、instructionsstart/end两段说明、displayName、isOfficial、description不能超过 200 字符、documentation变量统一以$$cap开头另外内置三个特殊变量$$cap_appname、$$cap_root_domain、$$cap_gen_random_hex(长度)别忘了在public/v4/logos/放入同名.png图标本地实测先在 CapRover 面板跑通提交 PR 之前请先在自己的 CapRover 实例里验证登录 CapRover 面板进入apps → One-Click Apps/Databases在下拉列表底部选择 TEMPLATE 粘贴你的 YAML点击NEXT填入变量值确认应用正常部署后再进入提交流程validate 校验提交前必做的自检清单运行npm run validate_apps它会执行 scripts/validate_apps.js逐文件检查以下硬性规则任何一条不满足都会报错退出退出码 127public/v4/apps/下所有文件都以.yml结尾captainVersion等于 4存在caproverOneClickApp段description存在且不超过 200 字符instructions.start与instructions.end都存在services段存在同名 logo 文件存在于public/v4/logos/且是有效文件prettier 格式化保持仓库风格统一仓库用 prettier 统一 YAML/JSON 风格两个命令定义于package.jsonnpm run formatter只检查public/下的 yml/json 是否合规不修改文件npm run formatter-write自动格式化写回提交前建议先跑formatter自查有差异再跑formatter-write避免 CI 因格式问题打回。build 构建从 YAML 到 dist 静态站点npm run build会清空并重建dist/依次执行两个脚本scripts/build_one_click_apps.js处理旧的 v2 目录若存在scripts/build_one_click_apps_from_v4.js读取public/v4/下的 YAML同时生成 v2/v3/v4 三个版本的 JSON 产物、list应用清单文件并复制全部 logos最终dist/就是一套可被任意静态服务器托管的站点。仓库根目录的captain-definition文件更进一步把构建产物dist/直接装进 nginx 镜像让任何人都能在自己的 CapRover 实例上一键部署这个仓库本身 完整工作流一份照着做的清单克隆仓库git clone https://gitcode.com/gh_mirrors/on/one-click-apps安装依赖npm ci新增public/v4/apps/你的应用.yml并按 README.md 的模板补齐caproverOneClickApp段放入同名public/v4/logos/你的应用.png图标npm run validate_apps—— 全部通过 ✅npm run formatter-write—— 统一格式npm run build—— 本地生成dist/确认无报错在 CapRover 面板用 TEMPLATE 方式实测部署提交 Pull Request等待官方合并 小贴士如果你还想托管自己的私有应用仓库Fork 后删除现有应用、重复第 5~7 步再把dist/交给静态服务器即可面板中通过3rd party repositories填入仓库 URL 就能接入。【免费下载链接】one-click-appsCommunity Maintained One Click Apps (https://github.com/caprover/caprover)项目地址: https://gitcode.com/gh_mirrors/on/one-click-apps创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

2026/8/25 11:41:04

MSPM0G3507开发环境搭建:KEIL+SYSCONFIG+SDK三步闭环

1. 项目概述:为什么MSPM0G3507开发环境搭建值得花两小时认真对待我第一次拿到MSPM0G3507 LaunchPad板子时,以为和STM32一样——下载KEIL、装驱动、点编译就能跑LED。结果卡在“Device not found”整整三天。不是USB识别失败,不是驱动没装&…

2026/8/25 11:41:04

CCC数字钥匙为何必须用URSK:BLE密钥生命周期解析

1. 为什么CCC数字钥匙必须用URSK——从蓝牙协议栈底层看密钥生命周期你有没有遇到过这样的情况:车厂发来的BLE数字钥匙App,在测试机上能连上车锁,一到用户手机就频繁断连、配对失败,甚至提示“密钥无效”?我去年帮三家…

2026/8/25 11:41:04

LCA算法深度解析:Tarjan离线与倍增在线的工程实践

1. 这不是“背模板”,而是理解树上关系的底层逻辑你刷过LeetCode上那些“最近公共祖先”题吗?比如“二叉树的最近公共祖先”“二叉搜索树的最近公共祖先”“树中两个节点的最近公共祖先”……点开题解,十有八九是DFS递归返回标记,…

2026/8/25 11:41:04

FPGA图像采集与UDP图传硬核实现指南

1. 项目概述:为什么这套FPGA图像传输架构在工业和科研现场越来越吃香我做FPGA图像系统开发快十二年了,从最早用Spartan-3驱动CCD传感器,到后来在Zynq上跑OpenCV加速,再到最近三年集中攻坚高速视频流的端到端链路设计——这套“图像…

2026/8/25 11:36:03

加密狗通用使用教程:驱动安装、授权管理与常见问题解决

摘要:本教程为您提供全面专业的软件加密狗使用与系统配置教程。详细拆解硬件接口确认、跨平台驱动安装、高级授权管理机制,以及常见的设备未识别等故障排查方案,帮助用户安全、高效地运行受保护软件。一、 准备工作与技术规格预检在正式使用软…

2026/8/25 1:04:19

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/24 1:12:32

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/24 8:17:29

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/25 0:04:14

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory Meta Description:GetQzonehistory 是一个QQ空间历史说…

2026/8/25 0:04:14

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

【题目来源】 https://www.luogu.com.cn/problem/P7912 【题目描述】 小熊的水果店里摆放着一排 n 个水果。每个水果只可能是苹果或桔子,从左到右依次用正整数 1,2,…,n 编号。连续排在一起的同一种水果称为一个“块”。小熊要把这一排水果挑到若干个果篮里&#x…

2026/8/24 13:42:17

实测才敢推 AI论文网站 2026最新测评与推荐

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。一、综…

2026/8/24 18:13:48

2026必备!AI论文网站测评:最新推荐与深度对比

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

2026/8/25 1:08:14

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…