FN软仓:不是又一个商店,是开商店的工具

FN软仓:不是又一个商店,是开商店的工具

2026-11-16 00:04:21 0点赞 0收藏 0评论

FN软仓:

一个飞牛nas系统(FNOS)的三方应用商店部署系统项目。

它由两半组成:一个能自己部署的服务端,一个装在飞牛里的客户端。

服务端跑起来,你就有了一个"源"。

客户端装进去,你就有了一个"前台"。

两半可以只用一半——不想折腾的人光装客户端就行,只想做后端的人服务器跑起来就能收工。

下面按"有哪几个部件、各自能干什么、五种情况怎么用"来讲。

一、两个部件,四种组合

1.服务端:

是一个 Docker 镜像,默认 5660 端口,IPv4/IPv6 双栈。跑起来之后浏览器打开就是完整后台:上货、开发者、统计、加速线路、推送、邮件,全在里面。

2.客户端:

是一个 FPK,装到飞牛应用中心。它自己不带任何内容,内容全来自它连的"源"。

3.组合起来是四种用法:

四种用法四种用法FN软仓客户端旧版首页FN软仓客户端旧版首页

二、客户端有两个模式,这个选择决定一切

第一次打开会让你选,之后按这个模式走:

1.用户模式:预置官方源,锁死,删不掉。界面就是个正常商店,搜、看、装、更新。后台每次启动会把官方源地址强制覆盖成默认值,所以旧地址被换掉时你不需要手动改。

2.极客模式:不预置任何源,第一次进来是空的,要你自己填源地址。填几个都行。极客模式启动时还会把残留的官方源槽位清掉,保证列表里只有你放进去的东西。

这就是两种完全不同的产品:

用户模式是"给你一个商店";

极客模式是"给你一个前台,货架自己接"。能接自建的源,也能接友店的源,还能两家一起接。

多个源是并发拉的,合并时按"应用 ID + 平台"去重,同名同平台只留版本高的那个。所以接三个源不会看到三条重复记录。

三、服务端里有什么

四块。

1. 上货:三种方式同时开着

自己传【服务端全托管模式】。 选一个 FPK,服务端把 manifest 拆开,名字、版本、架构、简介、依赖、标签全读出来;图标从包里抽出来,转成 PNG 并压到 2048 以内;上传完应用就在列表里了,不用再填表。上限单包 512MB,批量一次 2GB,截图单独换,单次 64MB。不想下载再上传,就贴个 URL 让服务端自己去拉。

挂外链【服务端半托管模式】。 只登记元数据,下载地址填fpk直链(Git类平台的 Release 或自己的 CDN)。客户端点安装,服务端回 302 把请求甩过去,包不经你的机器。你 NAS 上只多一条记录,不多一个字节。

招商【开发者系统模式】。 开发者申请入驻,你审批,系统发他一个 Token。之后他自己登后台传包、改简介、提版本,提交的改动进审核队列,你点了通过才生效,通过或驳回都会给他发通知。每个开发者自动汇总成一个独立子源,**他不用建仓库、不用买服务器、也不用知道源文件该长什么样**。

2. 分发:一次安装要过四道

客户端点"安装"之后,服务端要决定这个包从哪儿出去:

1. 本地有这个 FPK → 直接给文件

2. 只登记了外链 → 302 跳过去

3. 配了加速线路 → 后台配一批加速站,服务端定时探测(默认 10 分钟一轮,单次探测 10 秒、抓 0.5MB),按实测速度排序,把名次写进下发列表,最多 10 条

4. 客户端逐条试 → 首包 5 秒没动静就换下一条,整轮 50 秒封顶

下载地址是每次请求现算的,不是写死在包里。所以你换线路、加镜像、改目录,已经发出去的客户端不用动。

3. 运营:后台能看到什么

- 下载量:按应用、按天、按平台分开记,同一设备 60 秒内重复下载只算一次

- 设备:客户端 ID、版本、架构(x86/ARM/未知)、在线离线,能筛能导 CSV

- 评分:终端用户打分,后台可看

- 推送:定向消息、强制更新,按设备或版本下发

- 邮件:开发者申请、上架更新、源状态、周报,五个开关各自独立。上架更新在一轮检测里会合并成一封,不会刷屏

- 限速与封禁:按时间窗和请求数限流,超了封一段时间,可以拉白名单

- 备份恢复:整个 data/ 打包带走,恢复时有白名单和路径穿越拦截

4. 开发者:一套完整的分账台

申请 → 审批 → 发 Token → 自助提交 → 变更审核 → 通知 → 数据看板。开发者能看到自己应用的下载量、上架状态、被驳回的原因,也能自己撤回还没审的改动。

这套东西的意义是:你想让别人往你的商店上货,不用先教他写 JSON。

FN软仓:不是又一个商店,是开商店的工具

四、五种玩法

玩法一:我只是想装应用

装客户端,选用户模式。结束。

你得到的是:多源缓存、装得稳。图标、预览、安装包都落盘,源站抽风时照样能翻能装(30 天没用到的自动清)。

玩法二:手上有一堆自己攒的包

适合:自己改的包、内部工具、家里人用的东西、不想公开的东西。

1. 一台能跑 Docker 的机器,`docker run` 起服务端

2. 后台批量传包,图标自动抽,不想传就贴外链

3. 客户端选极客模式,把这个源的地址填进去

你可以只让自己用(局域网),也可以开个端口给朋友(公网 + 反代)。数据在你机器上,删了就真没了。

玩法三:我是个开发者,只想发自己的包

两条路,看你想要什么:

想要省事:找已经在运营的源主申请开发者账号。审核过了拿 Token,自己登后台传包,改简介、发新版本都不用等排期,也不用为了一个版本号去改一次仓库。

想要自己掌控:包留在自己的Git类平台的 Release 或自己的 CDN上,只把元数据登记到某个源里,填成外链。**包的所有权在你手上**,哪天不想托管了,撤掉那条记录就行,源主那边一个字节都没存过你的东西。

玩法四:我想做一个对外的商店

这是它作为"模板"的完整形态。

FN软仓:不是又一个商店,是开商店的工具

1. 跑docker服务端 + 配BASE_URL和ADMIN_PASSWORD + 反代(可选,Range、302、超时三项要配对)

2. 后台配加速线路(针对Github,可选),服务端自己测速排序

3. 开放开发者入驻,设审核习惯

4. 配邮件,开发者申请、上架、源故障都推到邮箱

5. 客户端选极客模式,源管理填写自己的BASE_URL(可以公布出去给客户端用户用)

后面日常只做两件事:审开发者的提交、看统计。剩下的(选线、测速、图标缓存、封禁)系统自己在跑。

FN软仓:不是又一个商店,是开商店的工具

玩法五:我已经有几个源,只想统一看

不部署服务端,只装客户端,极客模式把几个源地址都填进去。

你得到的是一个合并列表:同名同平台取最高版本,图标统一走本地缓存,哪家的源挂了不影响另外几家。相当于给自己做了个聚合前台。

五、跟友店是什么关系

不是竞品,是不同层。这话不是客套。

友店做的是内容运营:把应用聚起来、维护源站、跟着版本更新、扛住流量。这活又累又不讨好,总得有人干。

FN软仓做的是工具。友店愿意,可以拿它当后端;普通用户装了 FN软仓客户端,在极客模式里把友店的源加进来,照样逛、照样装。客户端连图标的地址都做了兼容——友店把加速前缀写死在图片地址里,它也能剥掉重找,图片不会白一片。

所以你装它,不用卸掉别的。它更像个能同时看几家店的前台。

六、从哪开始

想清楚你属于哪种人:

- 只想装应用 → 装客户端,用户模式

- 有自己的包要发 → 起服务端,客户端极客模式接自己

- 只想发自己的包 → 找个源主申请开发者,或者挂外链

- 想运营一个商店 → 起服务端 + 配BASE_URL和ADMIN_PASSWORD + 加速线路 + 客户端填源地址

- 已经有几个源 → 装客户端,极客模式全接进来

商店可以有很多个。开商店的工具,之前没有。

展开 收起
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章

Ta还没有介绍自己

关注 打赏
相关好价
最新文章 热门文章
0
扫一下,分享更方便,购买更轻松