Infrastructure as Code reference implementation for a self-hosted platform, documenting architecture, automation, and operational practices.
Find a file
Aengus An Bhaird 73fb265b9c Establish public repository foundation
- Define repository structure
- Add project documentation
- Add GPL-3.0 license
- Record repository architecture
- Define environment file conventions
- Document service naming philosophy
2026-06-28 22:48:57 +01:00
assets Establish public repository foundation 2026-06-28 22:14:40 +01:00
docs Establish public repository foundation 2026-06-28 22:48:57 +01:00
env.example Establish public repository foundation 2026-06-28 22:14:40 +01:00
services Establish public repository foundation 2026-06-28 22:14:40 +01:00
templates Establish public repository foundation 2026-06-28 22:48:57 +01:00
.gitignore Establish public repository foundation 2026-06-28 22:14:40 +01:00
LICENSE Establish public repository foundation 2026-06-28 22:14:40 +01:00
README.md Establish public repository foundation 2026-06-28 22:14:40 +01:00

Mo Bhrú

A documented Infrastructure as Code reference implementation for a self-hosted platform.

Mo Bhrú is a personal infrastructure project that demonstrates production-oriented engineering practices through Infrastructure as Code, comprehensive documentation, security-first design, and reproducible deployments.

Rather than documenting a specific homelab, this repository focuses on architectural decisions, service design, deployment patterns, and operational practices that can be applied to self-hosted environments of different sizes.


Project Goals

  • Demonstrate Infrastructure as Code practices.
  • Build reproducible Docker Compose deployments.
  • Document architectural decisions through ADRs.
  • Keep configuration externalised and version controlled.
  • Follow security-by-default principles.
  • Produce documentation suitable for long-term maintenance.

Platform Principles

  • Infrastructure as Code
  • Documentation First
  • Security by Default
  • Least Privilege
  • Reproducibility
  • Operational Simplicity

Why Irish Names?

Every service is named after a figure, place, or symbol from Irish mythology and early Irish tradition.

The naming convention provides memorable service names while giving the platform a consistent identity.

Service Role Technology
Lia Fáil Password Management Vaultwarden
Ogma Source Code Management Forgejo
Camall Reverse Proxy Caddy
Manannán Network Gateway MikroTik

Repository Structure

assets/
docs/
env.example/
services/
templates/

Documentation

The repository contains:

  • Architecture documentation
  • Architecture Decision Records (ADRs)
  • Docker Compose examples
  • Environment file templates
  • Service documentation
  • Configuration guidelines

Current Status

Completed

  • Repository foundation
  • Documentation framework
  • Lia Fáil Docker Compose deployment

In Progress

  • Ogma migration
  • Public documentation

Planned

  • Reverse proxy documentation
  • Monitoring stack
  • Backup strategy
  • Identity management

Disclaimer

This repository intentionally omits infrastructure-specific information, credentials, network topology, and deployment secrets.

Its purpose is to demonstrate engineering practices rather than reproduce a production environment.

It is intended as a reference implementation and educational resource for Infrastructure as Code, self-hosting, and operational documentation.

Related Repository

The operational repository used to manage the live platform is intentionally kept private.

This public repository contains a curated subset of the project, focusing on architecture, documentation, Infrastructure as Code practices, and reusable deployment examples.

Its purpose is to demonstrate engineering practices while protecting operational details and sensitive infrastructure information.

License

This project is licensed under the GNU General Public License v3.0 (GPL-3.0).

It documents the deployment, configuration, and operation of several open-source projects. Each third-party application referenced in this repository remains subject to its own licence and copyright.

This repository only contains original documentation, deployment examples, and configuration files created for the Mo Bhrú project.