# Topology (generated)
Source: [inventory.yaml](../../../inventory.yaml) — 2 hypervisors, 20 LXCs, 2 VMs, 2 workstations, 18 services.
Edge semantics: [oikos/ontology.yaml](../../../oikos/ontology.yaml). Operating model: [OIKOS.md](../../../.agents/OIKOS.md).
## Compute & ingress
```mermaid
flowchart LR
subgraph hubris_sub["hubris (Proxmox)"]
trmnl["trmnl
LXC 128
trmnl-middleware
192.168.8.211"]
nfs_export["nfs-export
LXC 102
storage-export
192.168.8.200"]
paperless["paperless
LXC 103
document-archive
192.168.8.130"]
gitea["gitea
LXC 104
git-server
192.168.8.121"]
apps["apps
LXC 105
docker-apps
192.168.8.205"]
auth_outpost["auth-outpost
LXC 106
authentik-gateway
192.168.8.6"]
dns["dns
LXC 107
dns-server
192.168.8.2"]
nextcloud["nextcloud
LXC 114
file-sync
192.168.8.224"]
sophia["sophia
LXC 119
workshop
192.168.8.109"]
mule_images["mule-images
LXC 120
photo-management
192.168.8.136"]
caddy["caddy
LXC 121
reverse-proxy
192.168.8.175"]
teddycloud["teddycloud
LXC 131
teddycloud
192.168.8.150"]
zimaos["zimaos
VM 100
nas-frontend-eval
192.168.8.195"]
haos["haos
VM 108
home-automation
192.168.8.101"]
end
subgraph strong_sub["strong (Proxmox)"]
house["house
LXC 129
family-planner
192.168.8.244"]
jellyfin["jellyfin
LXC 101
media-server
192.168.8.246"]
elementsynapse["elementsynapse
LXC 118
matrix-server
192.168.8.242"]
arriman["arriman
LXC 122
arr-stack
192.168.8.245"]
grimmory["grimmory
LXC 130
book-library
192.168.8.247"]
seanime["seanime
LXC 133
anime-media-server
192.168.8.248"]
romm["romm
LXC 134
rom-manager
192.168.8.249"]
end
rclone["rclone
lxc
backup"]
republic_laptop([republic-laptop
workstation
primary-dev])
mac_mini([mac-mini
workstation
dev
192.168.178.182])
netbird_vps[[netbird-vps
external
netbird-mgmt]]
url_artifacto(["artifacto.hubris.network"]) -->|routes-to| apps
url_authentik(["auth.hubris.network"]) -->|routes-to| netbird_vps
url_gitea(["git.hubris.network"]) -->|routes-to| gitea
url_homelab_mcp(["mcp.hubris.network"]) -->|routes-to| apps
url_jellyfin(["media.hubris.network"]) -->|routes-to| jellyfin
url_matrix(["matrix.hubris.network"]) -->|routes-to| elementsynapse
url_nextcloud(["cloud.hubris.network"]) -->|routes-to| nextcloud
url_paperless(["paperless.hubris.network"]) -->|routes-to| paperless
url_photos(["photos.hubris.network"]) -->|routes-to| mule_images
url_proxmox_ui(["proxmox.hubris.network"]) -->|routes-to| hubris_sub
url_secrets_issuance(["secrets.hubris.network"]) -->|routes-to| apps
url_teddycloud(["teddy.hubris.network"]) -->|routes-to| teddycloud
url_trmnl(["trmnl.hubris.network"]) -->|routes-to| trmnl
url_zimaos(["zimaos.hubris.network"]) -->|routes-to| zimaos
```
## Storage (mounts)
```mermaid
flowchart LR
mnt_library[("/mnt/library")]
mnt_media_local[("/mnt/media_local")]
mnt_media_local_anime[("/mnt/media_local/anime")]
apps["apps"] -->|mounts| mnt_library
arriman["arriman"] -->|mounts| mnt_media_local
gitea["gitea"] -->|mounts| mnt_library
grimmory["grimmory"] -->|mounts| mnt_media_local
hubris["hubris"] -->|mounts| mnt_library
jellyfin["jellyfin"] -->|mounts| mnt_media_local
mule_images["mule-images"] -->|mounts| mnt_library
nextcloud["nextcloud"] -->|mounts| mnt_library
paperless["paperless"] -->|mounts| mnt_library
romm["romm"] -->|mounts| mnt_media_local
seanime["seanime"] -->|mounts| mnt_media_local_anime
sophia["sophia"] -->|mounts| mnt_library
teddycloud["teddycloud"] -->|mounts| mnt_library
```
## Archaeology (destroyed nodes)
| Node | ID | Destroyed | Reason |
|---|---|---|---|
| plato | 126 | 2026-06-28 | notes workspace decommissioned; data retained at /mnt/library/documents/plato |
| claudio-bot | 123 | 2026-06-04 | replaced by Hermes Agent on mac-mini; monitoring moved to homelab-health-watchdog cron |
| mule-photos-new | 127 | 2026-05-22 | PhotoPrism test stack promoted to LXC 120 (Mulimage 2.0 merge) |
| heaper | 116 | 2026-05-14 | decommissioned; data retained at /mnt/library/heaper |
| syncthing | 109 | 2026-05-14 | decommissioned; library subtree was empty |
| seafile | 125 | 2026-05-13 | Seafile Pro evaluation rejected; files.hubris.network removed from caddy + dns |
| arr-yunohost | 100 | 2026-04-28 | migrated to docker stack on arriman (LXC 122) |
| flaresolverr | 106 | 2026-04-28 | folded into the arriman docker compose |
| marimo | 107 | 2026-04-28 | decommissioned |
| photoprism | 110 | 2026-04-28 | replaced by mule-images (LXC 120) |
| karakeep | 111 | 2026-04-28 | decommissioned |
| immich | 112 | 2026-04-28 | replaced by mule-images (LXC 120) |
| reticulum | 115 | 2026-04-28 | decommissioned |