当应用由多个服务组成(例如业务服务 + 数据库 + 消息队列),使用编排文件可以集中声明它们的定义、依赖与运行方式。编排的执行由设备代理统一完成——你在发布中配置,设备自动部署,无需在设备上手工操作。
设备侧的执行机制
Section titled “设备侧的执行机制”发布中声明编排配置(services + programs) │ ▼设备代理同步目标状态 ──▶ 拉取镜像 / 应用包 ──▶ 创建并启动服务 ──▶ 持续守护 │ │ │ ▼ └────────────────────────────── 版本更新 / 回滚 ◀────── 异常自动重启- 多服务的启动顺序、依赖关系由设备代理按编排声明处理;
- 服务异常退出自动重启,设备重启后自动恢复;
- 版本升级与回滚通过发布管理,设备代理自动执行。
编排配置示例
Section titled “编排配置示例”以下为发布中的编排配置(完整字段说明见 docker-compose 兼容与拓展):
version: "2.4"
services: app: image: myapp:1.0.0 restart: always ports: - "8080:80" depends_on: - db
db: image: postgres:16 volumes: - dbdata:/var/lib/postgresql/data
programs: collector: command: collector --config /data/collector.conf restart: on-failure
volumes: dbdata:在发布中配置
Section titled “在发布中配置”编排配置在创建发布时填写(支持编辑模式或上传编排文件),应用包(容器镜像 / 原生应用包)在发布详情中上传。操作详见:
- JelinaCloud 创建 Release 操作指引
- JelinaCloud 部署 Release 操作指引
- 编排中的数据卷独立于容器生命周期,容器重建、升级不影响数据;
- 建议同时将关键数据挂载到设备的数据分区。
- 编排支持基于 2.x 规范,主流编排文件可直接使用;
- 3.x 新增的字段不在支持范围内;
- 完整的字段与兼容性说明见 docker-compose 兼容与拓展。
- 应用管理 — 发布体系总览
- 原生应用与程序集 — 原生应用的发布配置
- 云端应用部署与 OTA — 部署与更新链路