Container Architecture

Container Architecture

The Flora Family homelab relies on a standardized Docker deployment pattern to ensure security, portability, and ease of management.

📂 Directory Layout

To maintain a clean separation between configuration and state, Terra uses two primary directories:

🛠️ Deployment Standards

🔐 Non-Root Execution

Every service is configured to run as a non-privileged user, with the specific exceptions of Watchtower and Beszel Agent (which require root/host socket access to monitor system health and container status).

Non-root execution is achieved through one of three methods:

  1. Standard user: flag: For images that support it (e.g., user: "51100:61100").
  2. Environment Variables: Many linuxserver.io images use PUID/PGID variables.
  3. Custom Dockerfile Builds: Used for "scratch" images or minimalist images (like OpenWebUI and SearXNG) to manually inject the desired UID/GID and install local CA certificates.

🔗 Shared Infrastructure

Common backend services are standardized to simplify inter-container networking and permissions:

🔄 Lifecycle Management


Revision #2
Created 2026-02-09 16:06:44 UTC by Chris
Updated 2026-02-09 16:10:40 UTC by Chris