I’m playing with an incus cluster, validating what I’m hoping to do with incus in the future. What I’m hoping is to be able to use incus-compose as lightweight configuration as code and define the services, volumes, and networks that’ll be in my cluster through compose.
I have a 3 node cluster with identical hardware, each one with a btrfs storage pool.
I’ve got this compose:
services:
server:
image: codeberg.org/forgejo/forgejo:16
container_name: forgejo
environment:
- USER_UID=1000
- USER_GID=1000
restart: always
volumes:
- forgejo-data:/data
ports:
- '3000:3000'
- '222:22'
volumes:
forgejo-data:
x-incus-compose:
pool: default
networks:
default:
x-incus-compose:
network: incusbr0
and what i’m getting running incus-compose from my laptop:
22:09 ERR Ensuring resources project=forgejo error="in an operation: instance(forgejo): Failed creating instance record: Failed initializing instance: Failed add validation for device \"vol-forgejo-data\": Failed loading custom volume: Storage volume not found"
ensure image codeberg.org/forgejo/forgejo:16 [done]
ensure image ghcr.io/lxc/incus-compose/ic-healthd:~ [done]
ensure network default [done]
ensure storage-volume ic-healthd [done]
ensure storage-volume forgejo-data [done]
ensure instance forgejo-ic-healthd [done]
ensure instance forgejo [warn: in an operation: Failed creating instance record: Failed initializing instance: ~
Based on the amount of documentation I’m finding, this seems like an unusual configuration?