Expand description
The one spec model shared by the library API, the CLI and the compose YAML.
Every struct denies unknown fields, so a typo is an error rather than a
silently ignored setting. The JSON Schema (isb schema) is generated from these types.
Structs§
- Compose
File - A compose file: named volumes plus any number of services, each one sandbox. Mirrors docker compose wherever incus allows.
- Dependency
- Deploy
- docker’s
deploy:, forisb stack deploy. - Domain
Spec - A hostname (and path) the ingress serves a service on.
- Environment
- A service’s environment: plain values, and variables whose value is a
top-level secret (
KEY: {secret: NAME}). - Exec
Defaults - Defaults for exec into a sandbox. Per-call options override them.
- Exec
Spec - The
exec:block of a service: exec defaults with no docker equivalent. - Health
Probe - A healthcheck resolved to argv and durations.
- Healthcheck
- docker compose’s
healthcheck:. Durations are strings (30s,1m30s). - Idmap
Map - Idmap
Raw - Named
Volume Spec - A named custom storage volume.
- Port
Binding - Port binding builders.
- Port
Spec - An incus proxy device. Written as docker’s
[HOST_IP:]PUBLISHED:TARGET[/PROTOCOL], its long form (PortMappingin the schema), or the incus form (ProxyPort). - Resource
Limits - Resources
- Restart
Policy - Sandbox
Spec - Everything about one sandbox: a compose service.
- Secret
Def - Where a secret’s value comes from. Exactly one source.
- Secret
Ref - A service’s use of a secret.
- Update
Config - Volume
- Mount builders:
Volume::bind(host),Volume::named(name). - Volume
Options - docker’s
volume:block of a long-form mount. - Volume
Spec - A mount. Written as
SOURCE:TARGET[:OPTIONS]or as the long form (VolumeMountin the schema); always serialized in the long form.
Enums§
- Depend
Condition - What a dependency must reach before its dependents start.
- Failure
Action - Idmap
Mode - Idmap
Spec - idmap handling.
- Instance
Type - Instance type.
- Mount
Type - What a mount’s
sourceis. - OnChange
- What a new version of a secret does to the stack services using it. Ordered weakest first: a service that uses a secret twice with different settings gets the stronger one.
- Port
Bind - Which side listens.
- Ready
Check - A readiness check. “Running” alone is not ready: networking comes up a beat after the instance does.
- Restart
Condition - Restart
Mode - docker’s
restart:. - Secret
As - How an
environmentsecret reaches the app (KEY: {secret: NAME, as: ...}). - Update
Order
Constants§
- DEFAULT_
SECRET_ REFRESH - How often
isb servechecks a driver-backed secret by default.
Functions§
- compose_
schema - JSON Schema for the compose file format.