Data Organization Standard (Fleet Standard v3.0)
🌌 Overview
This document defines the mandatory directory structure for the Federation Fleet.
UPDATE 2026-01-29: Shifted to "Atomic Monolith" Storage Model (/mnt/vault) to enable hardlinks and instant moves across services.
🏗️ The Tiered Namespace Structure
1. Local Storage (/opt/docker_data) - The Brain
All active configurations and databases must reside on the compute node's local storage to ensure high performance and prevent SQLite corruption over NFS.
| Directory | Purpose | Retention Policy |
|---|---|---|
/opt/docker_data/[app]/config |
Runtime configurations (YAML, JSON). | Replaced on Deploy |
/opt/docker_data/[app]/db |
Active Databases (Redis, Postgres). | High Priority Local Backup |
/opt/docker_data/[app]/data |
Fast-access application data. | High Priority Local Backup |
2. Network Storage (/mnt/vault) - The Unified Vault
The NAS exports a single root (/mnt/vault) to all clients. This allows hardlinks between downloads and media libraries.
| Directory | Purpose | Retention Policy |
|---|---|---|
/downloads/ |
High Churn. Torrents, incomplete files. | Excluded from Daily Snapshots |
/media/ |
Library. Movies, TV, Music, Books, ROMs. | Daily ZFS Snapshots |
/backups/ |
Archives. Destination for local config backups. | 30-Day Rotation |
/app_data/ |
Shared State. Heavy blobs not suitable for local SSD. | Daily ZFS Snapshots |
🛡️ Infrastructure as Code (IaC) Mandate
- Source of Truth: Local Git repository at
~/projects/federation-fleet(or~/projects/AI). - Deployment: The
deploy.shscript syncs from Git ->/opt/docker_data. - Backups: A
backup_configs.shscript syncs/opt/docker_data->/mnt/vault/backups.
🛠️ Implementation Rules
1. Client Mount Points
All Nodes (VMs/LXCs) must mount the storage at the exact same path to allow uniform Docker configs.
* Source: 192.168.1.100:/mnt/TheWarpCore/vault
* Destination: /mnt/vault
2. Docker Volume Mapping (Standard)
volumes:
# Local Configs (Fast)
- /opt/docker_data/radarr/config:/config
# Unified Storage (Hardlink Compatible)
- /mnt/vault:/data
Application Path Config:
* Download Client: /data/downloads/torrents/[category]
* Media Manager: /data/media/[category]
✅ Compliance Check
Before any new software is installed or migrated, the node commander (AI Agent) must:
1. Ensure local directories exist in /opt/docker_data.
2. Ensure /mnt/vault is mounted on the host.
3. Verify the application is configured to use atomic moves (Hardlinks) if applicable.