Pular para o conteúdo principal

lxd

DockNimbus vs Canonical LXD

These are fundamentally different tools solving different problems:

DockNimbusCanonical LXD
What it isSelf-hosted cloud platform / IaC orchestratorSystem container & VM manager
Abstraction levelPlatform-level (like a mini AWS/GCP)Host-level (like a hypervisor)
WorkloadsDocker containers, K3s pods, Compose stacksSystem containers (full OS), VMs
Container modelApplication containers (Docker/OCI)System containers (run full init, feel like VMs)
Cluster modelCentral API server + per-node agents (hub-spoke)Distributed peer cluster (Raft/Dqlite)
NetworkingWireGuard mesh VPN, EasyHAProxy LB, dnsmasq DNSOVN, bridged, macvlan, SR-IOV
StorageNFS volumes, MinIO S3ZFS, Btrfs, LVM, Ceph, CephFS
IaCBuilt-in YAML manifests with idempotent apply, drift detection, pruningNo native IaC; relies on Terraform provider or Juju
OrchestrationDocker Swarm + K3s built-inNone (manages instances, not orchestration)
StateCentralized SQLiteDistributed Dqlite across cluster
AuthMulti-user IAM (HMAC + JWT + mTLS)TLS client certs, RBAC (via Canonical RBAC)
Target hardwareHeterogeneous (RPi + x86 mixed clusters)Any Linux host, focus on server/cloud
Node setupAutomated via SSH (installs agent, WireGuard, Docker)Manual lxd init or preseed
Load balancingBuilt-in (EasyHAProxy)Not included
Written inGo (single binary)Go (snap-packaged)

When to use which

DockNimbus — You want a turnkey platform that takes bare metal (especially mixed ARM/x86 like Raspberry Pis + servers) and gives you Docker services, Kubernetes clusters, storage, networking, load balancing, and IaC from a single CLI/manifest. It's opinionated and batteries-included.

LXD — You want lightweight system containers or VMs that behave like full Linux machines. Great for dev environments, CI runners, or workloads that need a full OS (systemd, SSH, package management inside the container). LXD gives you more control at the infrastructure layer but less out-of-the-box orchestration.

Key philosophical difference

  • LXD manages machines (containers/VMs that look like servers)
  • DockNimbus manages infrastructure (takes machines and builds a platform on top of them with clustering, networking, storage, and workload orchestration)

They could even be complementary — you could run DockNimbus nodes inside LXD instances if you wanted isolated virtual infrastructure for testing.