Terminology

If you're new to incus-compose, this page helps you translate between Docker Compose, Incus, and incus-compose terms. incus-compose sits between three vocabularies:

The same word sometimes means different things in each, and the same concept sometimes has two names. This page disambiguates them.

Quick mapping

flowchart LR
    subgraph C["Docker Compose - what you write"]
        direction TB
        SVC[service]
        CPRJ[the compose project]
        CNET[network]
        CVOL[named volume]
        CBIND[bind mount]
        CIMG["image, an OCI reference"]
        CHC["healthcheck / restart"]
    end

    subgraph I["Incus - what actually runs"]
        direction TB
        INST["one instance per replica<br/>web-1, web-2, ..."]
        IPRJ["project<br/>sanitized name"]
        IBR["managed bridge<br/>hashed if the name is long"]
        IVOL["custom storage volume<br/>UID/GID shifted"]
        IDISK["disk device<br/>host path, local Incus only"]
        IIMG["image<br/>cached, then copied per project"]
        HD["ic-healthd sidecar<br/>Incus does not do this itself"]
    end

    SVC --> INST
    CPRJ --> IPRJ
    CNET --> IBR
    CVOL --> IVOL
    CBIND --> IDISK
    CIMG --> IIMG
    CHC --> HD
Compose term Incus term Notes
service instance(s) One service becomes one or more instances (one per replica).
(the compose project) project Each compose project maps to its own Incus project.
network network (bridge) Compose network becomes an Incus managed bridge.
named volume custom storage volume With automatic UID/GID shifting.
bind mount disk device (host path) Needs incusd on this machine, or x-incus-compose.seed.
image (OCI ref) image (cached, per-project) Pulled via an OCI remote, cached, then copied into the project.
healthcheck / restart (enforced by ic-healthd) Incus does not run these; the sidecar does.
- profile Incus-only; no compose equivalent.

Core distinctions

Service vs Instance vs Container

Project (two layers)

"Project" is overloaded:

Network

Volume vs Bind mount

Image (OCI vs native)

Incus terms

incus-compose terms

Contributor / internal terms

These appear in the codebase and architecture docs, not in everyday use. See the Client Package for detail.

See also