jasicSECURITY / SYSTEMS
~/search
← ~/PROJECTS
HomelabIn progress

A deliberately private homelab

A Linux homelab for learning how to operate services while keeping public applications separate from private administration.

DebianDockerext4SQLite

Architecture

  1. Application
  2. Private service network
  3. Persistent storage
  4. Recovery snapshots

Problem

Adding a file service to an existing server should not let it exhaust storage used by unrelated services.

Objectives

Preserve existing data, place a filesystem-enforced limit on the new data tree, and verify that recovery snapshots are consistent.

Implementation

Ext4 project quotas account for an entire directory tree. An inherited project identifier includes application-managed versions and temporary files. Startup checks validate the mount and quota before starting the service.

Challenges

The disk already contained data. Enabling quota support required a controlled service stop, an offline filesystem check and a remount without changing the partition layout.

Lessons learned

A running container is only one part of service readiness. Storage failure behaviour and restore procedures need explicit testing.

Future improvements

Complete desktop-client testing and independent off-device backups.

Security considerations

  • No infrastructure addresses or credentials are published here.
  • Public application routing and private administration are separate concerns.
  • A local snapshot does not protect against losing the physical disk.