OrchestraOS Architecture

OrchestraOS combines container and native application support, device services, and image-based system updates on Linux and systemd. The reference layout separates replaceable A/B release slots from shared persistent configuration and runtime data.

High-Level Design

OrchestraOS container applications, native applications, and RAUC updates each communicate in both directions with Linux and systemd. Storage sits below Linux, followed by boot firmware and the target hardware. OrchestraOS container applications, native applications, and RAUC updates each communicate in both directions with Linux and systemd. Storage sits below Linux, followed by boot firmware and the target hardware.

Core design of OrchestraOS. Applications and update services use the same Linux foundation; the lower bands show storage and boot foundations. Select any diagram to open its full-size SVG.

Container workloads use Docker and Compose. Native applications execute directly on the target and can run as systemd services. RAUC updates replace the inactive system and application slot group, while /data and the writable /etc overlay retain configuration and runtime state.

The diagram describes the reference RAUC image with rootfs on LVM. Firmware and secure-boot support depend on the selected target. Optional Extensions describes capabilities added by separate layers.

The following subchapters describe the software, storage, and boot policies: