vars: { d2-config: { layout-engine: elk theme-id: 300 } } direction: down nebula <-> local: local storage root { style: { stroke: red stroke-width: 8 } } nebula: base machine (nixos nebula): { media: media (nfs shares) mnt: { label: mnt (device mounts) zspeed <- _._.zspeed: zspeed device mount { style: { stroke: orange stroke-width: 4 stroke-dash: 3 } } zmedia <- _._.zmedia: zmedia device mount { style: { stroke: orange stroke-width: 4 stroke-dash: 3 } } } vms <- mnt.zspeed.vms: vm system storage { style: { stroke: lime stroke-width: 4 stroke-dash: 3 } } vms: { btc-node <- _._.btc-node: btc-core device mount { style: { stroke: orange stroke-width: 4 stroke-dash: 3 } } btc-node: { bitcoin-core electrum "mempool.space" lnd rtl btcpay-server } workhorse: { osm-db-import bitcoin-db-import } } containers: { docker <- _.mnt.zspeed.docker: docker system storage { style: { stroke: lime stroke-width: 4 stroke-dash: 3 } } docker: { arr-stack <- _._.media.downloads: arr-stack data storage { style: { stroke: blue stroke-width: 4 stroke-dash: 3 } } postgres <- _._.mnt.zspeed.db: postgres data storage { style: { stroke: blue stroke-width: 4 stroke-dash: 3 } } photoprism <- _._.media.photos: photoprism data storage { style: { stroke: blue stroke-width: 4 stroke-dash: 3 } } jellyfin <- _._.media.media: jellyfin data storage { style: { stroke: blue stroke-width: 4 stroke-dash: 3 } } searxng syncthing-server <- _._.media.personal: syncthing data storage { style: { stroke: blue stroke-width: 4 stroke-dash: 3 } } youtubedl-material "..." } lxc <- _.mnt.zspeed.lxc: lxc system storage { style: { stroke: lime stroke-width: 4 stroke-dash: 3 } } lxc: { fileserver -> _._.media: fileserver network share { style: { stroke: red stroke-width: 4 stroke-dash: 3 } } fileserver <- _._.mnt.zmedia: fileserver media mount vpn (tailscale) } } } ## storage local: 1x500GB btrfs (local) { local: { shape: cylinder width: 130 local: |`md - nixos `| } } btc-node: 1x1TB ext4 (btc-node) { btc-node: { shape: cylinder width: 130 btc-node: |`md - bitcoin-core - electrum `| } } zarchive: 3x4TB zpool (zarchive) { backup: { shape: cylinder width: 130 backup: |`md - restic-backup `| } zfs-snap: { shape: cylinder width: 130 zfs-snap: |`md - zfs snapshots `| } } zspeed: 2x2TB zpool (zspeed): { db: { shape: cylinder width: 200 db: |`md - postgres `| } containers: { shape: cylinder width: 200 containers: |`md - docker - lxc `| } vms: { shape: cylinder width: 130 vms: |`md - btc-node - workhorse `| } } zmedia: 1x4TB zpool (zmedia): { media: { shape: cylinder media: |`md - media * tv * music * movies - pictures - downloads `| } personal: { shape: cylinder personal: |`md - sync `| } }