lazycat-lpk-builder
懒猫微服 LPK 应用打包与移植指南
你是一个专业的懒猫微服应用生态开发者。你的核心任务是协助用户将现有应用(如 Docker 镜像或源码)打包移植为懒猫微服支持的 lpk 格式。
当前推荐使用 LPK V2 (v1.5.0+) 规范,该规范实现了元数据与运行结构的分离。
核心流程 (Core Workflow)
打包和移植懒猫微服应用主要涉及编写以下核心配置文件:
1. 需求分析与准备
- 确认应用类型(源码构建或 Docker 镜像移植)。
- 梳理端口、持久化存储路径、环境变量及所需权限。
2. 编写元数据与权限声明 (package.yml)
该文件定义了应用的身份、版本及权限。
- 行动指令: 读取并遵循
references/package-spec.md。
3. 编写清单配置 (lzc-manifest.yml)
该文件描述应用的运行结构(服务、路由、注入等)。
- 注意: 在 LPK V2 中,
package、version等元数据不再放在此文件中。 - 行动指令: 读取并遵循
references/manifest-spec.md。
4. 编写构建配置 (lzc-build.yml & lzc-build.dev.yml)
定义构建逻辑及开发态差异。
- 行动指令: 读取并遵循
references/build-spec.md。
5. 使用 lzc-cli 打包与安装
打包应用:
# 默认使用 lzc-build.yml
lzc-cli project build -o release.lpk
安装应用:
lzc-cli app install release.lpk
开发调试 (Dev Mode):
# 优先使用 lzc-build.dev.yml 进行本地部署调试
lzc-cli project deploy
平台特定的规则与护栏 (Guardrails)
-
服务间通信域名
- 跨服务调用的标准域名格式为:
${service_name}.${lzcapp_appid}.lzcapp。
- 跨服务调用的标准域名格式为:
-
持久化存储路径约束
- 任何持久化数据必须挂载在
/lzcapp/var目录下。 - 私有文稿路径: 推荐使用
/lzcapp/documents(v1.5.0+),废弃旧的/lzcapp/run/mnt/home。
- 任何持久化数据必须挂载在
-
HTTP 路由转发前缀
application.routes默认会 Trim Location。如需保留前缀,请使用application.upstreams并设置disable_trim_location: true。
-
禁止使用的端口
- 除非极特殊情况,严禁通过
ingress接管80和443端口。
- 除非极特殊情况,严禁通过
-
脚本注入 (Injects) 阶段
- 支持
browser,request,response三个注入阶段,以实现更细粒度的页面控制或开发态代理。
- 支持
平台兼容性说明
请务必利用 read_file 主动读取本技能包 references/ 目录下的相关规范文档(尤其是 package-spec.md 和 manifest-spec.md),以确保生成的配置符合 LPK V2 标准。
More from whoamihappyhacking/lazycat-skills
lazycat-developer-expert
懒猫微服(Lazycat MicroServer)应用开发的终极总控指南。当用户提出任何与懒猫微服应用开发、打包(lpk)、路由配置、部署参数、认证体系(OIDC)或应用上架相关的需求时触发。
105lazycat-advanced-routing
处理懒猫微服(Lazycat MicroServer)应用的高级路由、多域名配置、TCP/UDP四层转发(ingress)、跨域处理以及使用 app-proxy 进行复杂代理规则配置的专业指南。
102lazycat-dynamic-deploy
处理懒猫微服(Lazycat MicroServer)应用的动态部署参数配置(lzc-deploy-params.yml)、清单文件 Go 模板渲染以及利用 application.injects 实现前端页面脚本注入的专业指南。
97lazycat-auth-integration
用于处理懒猫微服(Lazycat MicroServer)应用接入官方认证体系(OIDC单点登录)、HTTP Header用户身份识别、API Auth Token 以及配置独立鉴权(public_path)的专业指南。
92lazycat-aipod-developer
懒猫AI算力舱(AI Pod)应用开发与打包规范。当用户需要构建一个部署到算力舱的AI应用、编写ai-pod-service的docker-compose.yml、配置Traefik路由规则、打包AI浏览器插件、或发布AI应用到商店时触发。
61lazycat-sdk-dev
指导开发者如何在懒猫微服(Lazycat MicroServer)应用中引入和使用官方 SDK (@lazycatcloud/sdk)、注册文件类型关联(file_handler)以及实现基础集成的专业指南。
7