Sandstorm应用分发终极指南:私有仓库与公共市场发布全流程
Sandstorm作为一款自托管的Web生产力套件,通过安全强化的Web应用包管理器实现应用分发。本文将详细介绍如何在Sandstorm平台上完成从应用打包到私有仓库部署和公共市场发布的完整流程,帮助开发者高效分发应用。## 应用打包基础:准备发布的SPK文件在进行应用分发前,首先需要将应用打包为Sandstorm支持的SPK格式。打包过程中需确保应用元数据完整,这直接影响后续分发的顺利程
Sandstorm应用分发终极指南:私有仓库与公共市场发布全流程
Sandstorm作为一款自托管的Web生产力套件,通过安全强化的Web应用包管理器实现应用分发。本文将详细介绍如何在Sandstorm平台上完成从应用打包到私有仓库部署和公共市场发布的完整流程,帮助开发者高效分发应用。
应用打包基础:准备发布的SPK文件
在进行应用分发前,首先需要将应用打包为Sandstorm支持的SPK格式。打包过程中需确保应用元数据完整,这直接影响后续分发的顺利程度。
关键配置文件检查
应用的核心配置文件sandstorm-pkgdef.capnp包含了所有必要的分发信息。你需要特别关注以下内容:
- 应用ID:这是应用的唯一标识,对应于
id = "vfnwptfn02ty21w715snyyczw0nqxkv3jvawcah10c6z7hj1hnu0"格式的行。使用vagrant-spk listkeys命令可确认本地是否拥有对应私钥。 - 元数据完整性:包括应用名称、描述、图标和类别等信息。可参考Etherpad的manifest文件作为配置示例。
开发模式验证
在打包完成后,建议在开发模式下进行测试验证。Sandstorm提供了直观的开发模式界面,可帮助开发者在发布前发现潜在问题:
使用spk verify mypackage.spk命令可对打包文件进行完整性检查,确保元数据格式正确无误。
私有仓库分发:企业内部应用共享方案
对于企业或团队内部使用的应用,Sandstorm支持通过私有仓库进行分发,确保应用仅在授权环境中可用。
本地文件共享分发
最简单的内部分发方式是直接共享SPK文件:
- 创建一个FileDrop grain存储SPK文件
- 通过Sandstorm的内置分享功能将grain权限授予团队成员
- 接收者通过
spk install https://your-sandstorm-server/grain-url命令安装应用
私有服务器托管
对于需要频繁更新的应用,可搭建内部SPK服务器:
- 在内部Web服务器上创建专用目录存放SPK文件
- 配置Web服务器支持目录浏览
- 用户通过
spk install http://internal-server/apps/mypackage.spk安装应用
这种方式特别适合企业内部的应用版本管理,可通过简单的文件服务器实现集中化分发。
公共市场发布:面向全球用户的流程
将应用发布到Sandstorm公共应用市场可让全球用户发现和使用你的应用,需要完成以下关键步骤。
应用准备与身份验证
- 获取反馈:在正式发布前,建议将SPK文件分享到sandstorm-dev邮件列表获取社区反馈
- 身份验证:
- 创建GPG签名文件:
echo -n "I am the author of the Sandstorm.io app with the following ID: <app-id>" | gpg --sign > pgp-signature - 导出公钥:
gpg --export-options export-minimal --export <key-id> > pgp-keyring - 将签名和公钥添加到
sandstorm-pkgdef.capnp中
- 创建GPG签名文件:
元数据完善指南
高质量的元数据是应用在市场获得关注的关键:
-
图标要求:
appGrid:128x128像素,用于"新建"页面,不超过64KBgrain:24x24像素,用于导航栏和应用列表,不超过4KBmarket:150x150像素,用于应用市场列表,不超过256KBmarketBig:300x300像素,用于应用详情页,不超过256KB
-
分类选择:从官方分类中选择最匹配的类别,如
productivity、developerTools或office等 -
描述撰写:
shortDescription:2-3个词概括应用功能description:使用GitHub风格Markdown编写详细描述,不含HTML
提交与审核流程
完成准备后,使用以下命令提交应用:
spk publish mypackage.spk
# 或使用vagrant-spk
vagrant-spk publish mypackage.spk
提交后应用将进入审核队列,可在实验性应用市场查看待审核应用。审核通过后,应用将在主市场上线。
分发后维护:版本更新与用户支持
应用发布后,持续的维护和更新对用户体验至关重要。
版本更新流程
- 修改应用代码后,使用相同的私钥重新打包
- 更新
sandstorm-pkgdef.capnp中的version字段 - 在
changeLog中记录更新内容,建议使用H1标题区分版本 - 运行
spk publish命令提交更新,用户将收到自动更新通知
用户支持渠道
确保在元数据中提供有效的contactEmail,并建立以下支持渠道:
- 在应用描述中提供使用文档链接
- 监控用户反馈并及时响应
- 定期发布更新修复问题和添加新功能
通过本文介绍的方法,你可以灵活地在Sandstorm平台上分发应用,无论是企业内部的私有部署还是面向全球用户的公共发布。合理利用Sandstorm的安全特性和分发机制,将帮助你构建更安全、更易用的Web应用生态。
更多推荐



所有评论(0)