App Contract
您保留原生 Docker Compose 與精簡 App Contract。Developer Kit 產生其餘一切。沒有第二套 Compose DSL。
最少版面
本機 Inner Loop 專案與 Community Repository Packaging Definition 使用相同檔案:
compose.yaml
synology-app.yaml
icon.png
README.md 發佈到 Community Repository 時,目錄名稱必須等於 synology-app.yaml 中的 package(例如 apps/com.example.notes/)。
最少 synology-app.yaml
schema: 1
package: com.example.notes
version: 1.4.0
displayname: Example Notes
description: A private notes application for your NAS.
maintainer: Example Community Maintainer
os_min_ver: "7.2-69057" 欄位名稱在 SPK INFO 已存在處沿用。新名稱僅用於安裝參數、身分、檔案範圍與 Compose 與 SPK 無法表達的其他語意。當所有 OCI 映像 manifest 架構相同時可省略 arch。
您不應提交的項目
- App 原始碼或 Dockerfile(那些在上游 repo)。
- 建置的 SPK、產生的 INFO、精靈產物或 release Compose。
- Registry 憑證或 OCI 層。
Community Repository 保存可審查的 Packaging Definition — 足以重建 App Package,不是您的完整應用樹。
Managed Profile 預設
v1 Managed App 僅使用宣告式 App Contract 欄位。Extended SPK Profile 供受控覆寫,但不是預設路徑。安裝參數繫結規則請見 Developer Kit 規格:名稱直接對應 Compose 變數、secret 名稱或 Shared Folder bind 來源 — 無繫結 DSL。