Commit Graph
86 Commits
Author SHA1 Message Date
thesabear 4fe385f3b5 stacks: add .env + .env.secrets.ctmpl for platform stacks, fix var-name mismatches
Adds real Vault Agent secret templates and non-secret env vars for
14 platform stacks (caddy, caddy-internal, dashy, docker-socket-
proxy, dockhand, gitea, grafana-stack, hawser, kestra, kopia,
mosquitto, nocodb, node-red, speedtest-tracker), sanitized per the
kv/host/... convention established for identity-and-security.

Also fixes 6 variable-name mismatches discovered while cross-checking
every new .env/.ctmpl against what its actual public compose file
references (the public compose files were already adapted from the
private originals during an earlier reorg pass, so names don't always
match 1:1): authentik (PG_USER/PG_DB/PG_PASS), gitea (added
GITEA_DOMAIN/GITEA_ROOT_URL, dropped an unused duplicate-instance pair
of vars), grafana-stack (GRAFANA_ADMIN_PASSWORD), kestra (added
USERNAME/PASSWORD), kopia (SECRET_PASSWORD), nocodb (JWT_SECRET).
Also dropped an unused DOCKER var across most stacks where the
compose file hardcodes its path instead of referencing it.
2026-08-25 08:58:45 +03:00
thesabear 5d9f5be89e stacks: add .env + .env.secrets.ctmpl for identity-and-security stacks
Adds the real Vault Agent secret-rendering templates and non-secret
env vars for authentik, vaultwarden, and wazuh - sanitized (real
domain/email/SMTP provider genericized, kv/<host>/... paths use a
generic 'host' placeholder instead of the real hostname). This is
the standing pattern for the rest of stacks/ going forward.
2026-08-25 08:40:25 +03:00
thesabear 342fde4654 stacks: remove 9 folders, update stack count in README
Removed: ollama (AI-related concerns), emby/qbittorrent/prowlarr
(media-download concerns), bookstack (being deprecated in the
homelab), and mariadb-latest/mysql-8/postgres-18-alpine/valkey-9.0-
alpine (build-only base-image factories - nothing connects to them,
they add no portfolio value on their own; real per-app DB usage,
e.g. Kodi's own mariadb service, already lives in that app's stack
folder and is unaffected).

Stack count updated 53 -> 44 in both README references.
2026-08-25 08:27:33 +03:00
thesabear c86d53b60c update gitignore 2026-08-24 21:27:11 +03:00
thesabear cb1c25257f README: fix heading case, reorder sections, split dense intro paragraph
- Heading capitalization consistent Title Case throughout
- Moved the three personal sections (What I Have Explored, What I'm
  Focused On, Fun Fact) from between the two strongest technical
  sections to after Systems/What's Running, as a closing note -
  keeps momentum through the trust-boundary story into the diagram
  and full Systems breakdown, and gives the page a real closing beat
  instead of ending on a bare stack-count line
- Split the dense opening bio paragraph into two at its natural seam
2026-08-24 20:25:50 +03:00
thesabear 7cedba5ace assets: pull latest trust-boundaries diagram export 2026-08-24 20:11:35 +03:00
thesabear 070b662089 assets: fix diagram readability - bigger fonts, drop redundant in-image caption 2026-08-24 20:07:32 +03:00
thesabear 1627563564 update the readme 2026-08-24 19:57:11 +03:00
thesabear 89d61a9a24 assets: refresh trust-boundaries diagram export 2026-08-24 19:56:27 +03:00
thesabear a63a5dc589 README: add trust-boundary diagram, alphabetize Systems section
Adds a real drawio-exported diagram to "Why Four Trust Boundaries,
Not One" showing the physical blast-radius split behind the routing-
authority claim in the text (previously prose-only). Sanitized -
verified no real hostnames/IPs made it into the export.

Also reorders all 14 Systems bullets alphabetically for easier
scanning.
2026-08-24 19:53:34 +03:00
thesabear 454437fa4e README: fix vague section heading
"The Decision That Shows The Most" never stated what it was claiming.
Renamed to state the actual decision directly.
2026-08-24 14:29:30 +03:00
thesabear c48e8c6cbb update the readme 2026-08-24 14:00:41 +03:00
thesabear a7f1a98ed2 update the readme 2026-08-24 13:36:07 +03:00
thesabear 62d1a508eb README: ground every Systems bullet in verified, sourced detail
Fixed one real inaccuracy (Gitea registry scope, Secret Distribution
path count) and replaced generic descriptions with true, specific
detail across all 14 Systems bullets - real incidents, real design
decisions, concrete numbers - each checked against Trilium and, where
relevant, the live Ansible roles rather than trusted at face value.

Also stages a verified-but-unintegrated PAM hardening finding in
docs/firewall-and-network.md for that file's own upcoming audit pass.
2026-08-24 11:18:04 +03:00
thesabear 5403307790 updates 2026-08-23 12:57:55 +03:00
thesabear eea176c322 README: bump bullet-list app names to font-size 1.4em
1.15em rendered fine (sanitizer allow-list is working, confirmed by
the stat-table numbers) but was too subtle a jump to actually look
bigger next to body text. 1.4em matches the visual weight of the
stat-strip numbers.
2026-08-23 12:20:47 +03:00
thesabear 2740710f95 README: real CSS now renders - center stat table, verify bigger names
Gitea's default sanitizer strips style="" from every element; added a
markup.sanitizer allowlist for style on common tags (app.ini, this
Gitea instance) and restarted the service. Now that it's actually
respected: table centered via style="margin:0 auto" (the deprecated
align attribute never reliably did this), and the app-name font-size
bump from the last commit should finally show up too.
2026-08-23 12:16:19 +03:00
thesabear 744772139d README: make tech names in the bullet list bigger, not just bold
Plain markdown bold has no size control. Switched each app name to
<strong style="font-size:1.15em;"> so it stands out from the
description text instead of just being the same size in bold.
2026-08-23 12:03:11 +03:00
thesabear e5eee4d592 README: drop broken centering wrapper on stat strip
align="center" and a div wrapper both failed to actually center the
table under Gitea's markdown CSS. Rather than keep guessing, dropped
the centering attempt - table stays left-aligned with its per-cell
alignment intact.
2026-08-23 12:00:44 +03:00
thesabear 6278e94205 README: fix stat strip centering with a div wrapper
align="center" on <table> itself gets ignored - Gitea's markdown CSS
forces tables to display:block for horizontal scroll, which breaks
that attribute. Wrapping in <div align="center"> actually centers it.
2026-08-23 11:58:29 +03:00
thesabear a4d8f698e9 README: center stat strip and use meaningful icons instead of decoration
Table wasn't centered on the page (only text inside cells was) - added
align=\"center\" to the table itself. Icons were arbitrary; replaced
with ones that actually trace back to the related system's own icon
elsewhere in this doc (Docker whale for compose stacks, the brick wall
from Firewall & Network Segmentation for trust boundaries, the same
cycle icon Orchestration uses for automated maintenance flows).
2026-08-23 11:53:43 +03:00
thesabear 19cae974a8 update readme 2026-08-23 11:47:34 +03:00
thesabear 52c2ae7858 update readme 2026-08-23 11:45:00 +03:00
thesabear 57a1db1b63 update readme 2026-08-23 11:44:10 +03:00
thesabear 76e2d61fb8 update teh readme 2026-08-23 11:43:50 +03:00
thesabear 3df76a51db README: merge bio intro and hero pitch into one bulleted section
Both paragraphs made the same 'this isn't a hobby, it's a platform'
point and duplicated tech mentions. Merged into one section: a
bulleted list naming the real technology behind every category
(Vault for secrets, Kestra for orchestration, Wazuh+Dashy for the
SOC, etc.) instead of one dense paragraph or abstract category names.
2026-08-23 11:21:10 +03:00
thesabear 6cb48b4a6d readme updates 2026-08-23 10:58:21 +03:00
thesabear 2a0dc1f866 README: fix diagram caption to match what the simplified diagram actually shows
Caption claimed all dashed arrows were telemetry reporting, but two
of them ('proxies', 'auth') are traffic-routing relationships, not
telemetry - the old caption was written for the full 20-edge version
and never updated when the diagram got simplified.
2026-08-23 10:49:33 +03:00
thesabear e1227844c1 README: replace Mermaid diagram with real drawio SVG export
No more Mermaid, per standing rule - the architecture diagram is now
a real image (assets/architecture-overview.svg), built and exported
from the Nextcloud Diagramming app, fetched via WebDAV and validated
as well-formed XML before committing. Ends the rendering-gap chase
entirely since there's no live renderer involved anymore, just a
static image.
2026-08-23 10:46:23 +03:00
thesabear a19c6c02bb updates 2026-08-23 10:35:35 +03:00
thesabear b0792b7142 README: rebuild full diagram with corrected edge direction
Restructured so the edge proxy feeds forward into the app host
(EdgeProxy -.proxies.-> Apps) instead of the app host and SSO
pointing backward into the proxy - matches the real traffic
direction (browser hits the proxy first, which routes to the app)
and removes the long rank-spanning edges that were likely behind the
rendering gap. Full node set restored, colors restored.
2026-08-23 09:59:08 +03:00
thesabear 92b9168897 TEMP: isolate whether DNS-->Vault (the one rejoin in this tree) is the trigger 2026-08-23 09:55:21 +03:00
thesabear 0d377b48aa TEMP: test with a clean tree, no crossing/rejoining edges
7 nodes, strictly tree-shaped, no diamond merges (removed DNS-->Vault
and the EdgeProxy/SSO/InternalProxy branch entirely). If gap is gone,
the rejoining-path topology is the trigger, not raw node count.
2026-08-23 09:54:03 +03:00
thesabear 5f09d9c595 TEMP: test with ~half the real diagram (no Monitoring/SecMon fan-in)
Diagnostic bisection - if gap reappears here, it's a size/complexity
threshold. If not, the trigger is specifically in the observability
fan-in portion I removed for this test.
2026-08-23 09:51:48 +03:00
thesabear 3aeeb21518 TEMP: swap diagram for a trivial 3-node placeholder to diagnose the gap
Diagnostic only - not a real content change. If the gap disappears
with this minimal diagram, it's genuinely about the real diagram's
content and I can bisect from here. If the gap is still there, it's
not about the diagram at all.
2026-08-23 09:50:33 +03:00
thesabear 742ffec430 README: revert the 3 failed diagram-gap test changes
None of edge reduction, classDef removal, or multi-line label removal
fixed the gap - restoring the full diagram content since there's no
reason to keep it degraded for a fix that didn't work.
2026-08-23 09:32:25 +03:00
thesabear 9054ac7027 README: remove most multi-line <br/> node labels from diagram, test #3
Compared node labels between this diagram and the non-gapped
architecture-overview.md one - this had 5 two-line labels, that one
only 2. Reduced to 1 remaining (App Host) to test whether multi-line
label height is what's breaking the container size calculation.
2026-08-23 09:29:56 +03:00
thesabear 7cca0379e3 README: strip classDef color styling from diagram to test gap theory
The docs/architecture-overview.md diagram has no custom colors and
renders with no gap; this one had classDef/class styling and did.
Real comparative evidence, not a blind guess this time - testing
whether custom fill/stroke styling is what's breaking Gitea's
container height calculation.
2026-08-23 09:28:08 +03:00
thesabear 8436db4170 README: reduce diagram edge fan-in to try to fix the blank gap under it
8 dotted 'reports to' edges converging on 2 nodes was likely forcing
Mermaid's layout engine to reserve extra vertical space for edge
routing in the LR diagram, leaving a large blank area below the
visible nodes. Reduced to 2 representative edges - can't verify the
actual render myself, this is a targeted guess to test.
2026-08-23 09:24:05 +03:00
thesabear f8bc8a0479 update readme 2026-08-23 01:08:30 +03:00
thesabear eb563559f9 update readme 2026-08-23 01:08:05 +03:00
thesabear 6fccce3bdd updates 2026-08-23 01:07:42 +03:00
thesabear 5e5cd602b3 we 2026-08-23 01:07:21 +03:00
thesabear cd9959c51d s 2026-08-23 01:06:37 +03:00
thesabear 66e16e9ea9 update 2026-08-23 01:05:43 +03:00
thesabear a92b1f9bdd update readme 2026-08-22 22:59:55 +03:00
thesabear 576216f88e update readme 2026-08-22 22:58:33 +03:00
thesabear 1512a6cd11 updates 2026-08-22 22:56:58 +03:00
thesabear cac6f1c6c8 readme 2026-08-22 22:56:32 +03:00
thesabear a525946154 README: restore full original bio content to About me section. 2026-08-22 22:43:01 +03:00
thesabear be949216bf Remove Content Pipeline system from the public repo
Removed by request - it was the one unfinished system in the repo,
and it's the user's call on what represents them publicly. Removed
completely: the README section, docs/content-pipeline.md, and the
two stacks that only existed to back it (postiz, nocodb-content).
Fixed cross-links in dns-naming.md and firewall-and-network.md that
pointed at it (replaced the public-facing-app example with the
still-present Ghost blog), and notifications.md (dropped the
reference, also fixed a leftover 'documented rather than hidden'
phrase in the same paragraph). Stat strip and stack counts updated
(55->53 stacks, 16->15 systems).
2026-08-22 22:29:38 +03:00
thesabear c1ab267a00 README: remove redundant table, refocus Systems on capability not gotchas
The 'Every system, at a glance' table and the Systems section covered
the same 16 things in the same order - removed the table, kept the
narrative section since that's where the actual selling has to happen.
Rewrote every paragraph to lead with what the system does and its
real scope (what an employer needs to see) instead of a debugging
edge case or failure-mode trivia standing in for the description.
2026-08-22 22:18:18 +03:00
thesabear d71a6f1672 README: fix leftover LDAP reference in the systems table row
Missed this one in the previous cleanup - the compact table's SSO row
still summarized the removed LDAP claim.
2026-08-22 19:31:07 +03:00
thesabear e9af5dde32 Fix SSO section: correct README/doc split, remove unverified LDAP claim
README is short/sharp facts, docs/*.md is full depth/process/reasoning
- that split had collapsed into either near-duplicate text in both
files or the fact missing from the README entirely. README now states
the OIDC zone-crossing fact in one crisp sentence; the full doc has
the complete step-by-step breakdown. The LDAP superuser workaround
claim is removed from both - the source material frames it as
contingency guidance for a scenario that may never have come up, not
documented deployed behavior, so it doesn't belong in either file.
2026-08-22 19:30:52 +03:00
thesabear e2765ba749 Remove unverified LDAP workaround claim from SSO docs
The source material says header-based forward-auth is 'the viable
path instead, if SSO is wanted for an app like this' - conditional
contingency guidance for a scenario that may not have actually come
up, not a description of something built and running. Presenting it
as live, deployed behavior in both docs/sso-and-identity.md and the
README was a real accuracy error. Removed from both; the doc still
covers what's actually confirmed (Authentik, dual-zone registration,
native OIDC vs. proxy forward-auth split, least-privilege Git access).
2026-08-22 19:12:59 +03:00
thesabear a3b661ea70 README: rewrite all 16 system paragraphs, cut doc-hygiene filler
The paragraphs were near-duplicates of each doc's own opening -
added nothing beyond the table row above them or the full doc below.
Rewrote every one to lead with a different angle/detail than its
doc (the before/after story, the concrete failure math, the vendor
limitation) instead of restating the same sentences shorter. Also
removed every remaining 'documented honestly / rather than hidden /
caught during an audit' self-referential phrasing - state the fact,
don't narrate the act of documenting it.
2026-08-22 19:09:19 +03:00
thesabear 585c2ed471 README: lead with a real narrative instead of a description
New opening frames the repo as a platform, not a media-server-plus-
extras, and draws the direct line to what an employer's platform/
security team actually owns. Added a condensed version of the
trust-boundary story (the single hardest decision in the repo) right
in the README, ahead of the systems table, so a reader gets a real
'this person thinks like an engineer' moment before they even scroll.
2026-08-22 13:10:43 +03:00
thesabear 64a90946fe README: fix diagram rendering, add stat strip and systems table
Diagram: switched to LR layout, color-coded by role (edge/core/
observability), dropped the repeated 'reports to' labels that were
clipping in the browser - same fix already applied to
architecture-overview.md. Added a stat strip (11 hosts, 55 stacks,
16 systems, 4 boundaries, 13 flows) and a scannable systems-at-a-
glance table above the detailed sections, so a reader gets the full
picture in a 10-second skim before the deeper 2-minute read.
2026-08-22 13:06:31 +03:00
thesabear 745cc91dd5 docs: add stat strip, color-coded diagram, blast-radius table, real numbers
Actually fixed the 4 problems named earlier instead of just naming
them: a numbers-at-a-glance strip up top, the trust-boundary diagram
is now color-coded by boundary type, added a concrete blast-radius
table showing exactly what stays up vs goes down per failure, and
replaced vague figures ('~40 stacks', 'every managed host') with
real ones (41 stacks, 11 fleet hosts).
2026-08-22 12:53:54 +03:00
thesabear a77e3075bb docs: restructure architecture-overview.md around one central story
Leads with the hardest actual decision (4 trust boundaries, each
calibrated to a different risk level, enforced by 3 separate routing
authorities) given full narrative depth instead of flat template
treatment. The other 6 traffic laws move to a compact reference
table linking to their own dedicated docs, avoiding redundancy with
content that already lives elsewhere in more depth.
2026-08-22 12:50:34 +03:00
thesabear 4260c7a75b docs: rebuild architecture-overview.md around all 8 traffic laws
Previously only delivered 2-3 of the 8 traffic categories it claimed
to cover. Now states every law (ingress, east-west, secrets, DNS,
observability, notifications, CI/CD, management) with its own
Law/Flow/Failure-behavior, plus the 4 global architectural laws that
apply across all of them.
2026-08-22 12:43:55 +03:00
thesabear 5a96e92dc6 docs: fix architecture-overview.md dependency graph rendering
Switch to LR layout, restore all 12 observability-reporting edges
(cut them by mistake, they belong in a dependency graph), drop the
repeated 'reports to' label text that was breaking legibility and
let line style (solid=dependency, dotted=async reporting) carry that
distinction instead. Also shortened edge labels on the trust-boundary
diagram to avoid the same clipping issue.
2026-08-22 12:40:50 +03:00
thesabear febbf2e44c docs: deepen cron-scheduler, content-pipeline, iac-pipeline, and disaster-recovery
Completes the full depth pass across all 16 docs - real tech names,
why-this-vs-the-alternative reasoning, heavy cross-linking between
every doc, ranked/specific tradeoffs instead of generic hedges.
2026-08-22 08:13:49 +03:00
thesabear 1382a63dae docs: deepen observability, notifications, orchestration, registry, and dashy batch
Same treatment as the security batch - real tech names, 'why this vs
the alternative' reasoning, heavy cross-linking, ranked/specific
tradeoffs instead of generic hedges.
2026-08-22 08:06:47 +03:00
thesabear 12e69acde7 docs: deepen security/hardening batch to real deep-dive standard
Names real technology throughout (Vault, Authentik, pfSense,
firewalld, Wazuh) instead of staying generic, adds a 'why this
approach vs the alternative' section to every doc, cross-links
heavily between docs instead of treating each system in isolation.
2026-08-22 08:04:26 +03:00
thesabear 1a605845e3 docs: deepen dns-naming.md as the fix for thin write-ups
Names real technology (Technitium) instead of staying vague, adds
explicit cross-links to every other system that actually depends on
DNS, explains why self-hosted DNS was chosen, and adds a 'what I'd
improve' section. Template for redoing the rest.
2026-08-22 07:54:39 +03:00
thesabear 94f4a258f5 Remove stray .directory desktop-icon config file
Leftover local desktop metadata, not relevant to the repo content.
2026-08-22 07:44:37 +03:00
thesabear bebcd714af Restructure compose mirror: stacks/ grouped by purpose, not by host
Replaces rocky-docker-lxc/, caddy-vm/, monitoring-vm/, and automation/
with a single stacks/ tree grouped by function (identity-and-security,
platform, media, productivity, dev-tools) - 55 stacks total, every one
a real directory in the private repos today.

Resolves all outstanding drift: adds Wazuh (previously entirely
missing), Firefly III and Postiz (never mirrored), the internal-zone
Caddy instance and the Cron Scheduler's separate NocoDB instance
(both previously conflated with their counterparts under one shared
folder); renames Calibre-Web to calibre-web-automated and splits
Kodi-MariaDB into kodi + mariadb-latest to match what the private
repos actually run now; drops the decommissioned NetBox stack.

Also removes automation/iac/old-content/ and
automation/ansible/old-playbooks/ in the same pass - both folders
were entirely stale content describing a superseded architecture
(GitLab instead of Gitea, HAProxy+mTLS SSO instead of the current
Caddy+Authentik setup), now replaced by docs/iac-pipeline.md.
2026-08-22 07:44:11 +03:00
thesabear 20f39f3b6d docs: add architecture, IaC pipeline, and disaster recovery write-ups
Completes the docs/ set - all 16 systems now have a full deep-dive
page in the diagram+callout+table style. Architecture overview covers
the 4 trust boundaries and 2 traffic planes; IaC pipeline is a fresh
Packer->Terraform->Ansible writeup replacing the stale old-content/
snapshot; disaster recovery covers the 3 independent backup layers
and the deliberately decoupled OS/app upgrade systems.
2026-08-22 07:38:06 +03:00
thesabear c10ff81d47 docs: add orchestration, registry, dashy, cron, and content pipeline write-ups
Completes the orchestration/registry/content batch - Kestra's
check-pause-approve-apply pattern, the self-hosted build pipeline,
the SOC dashboard's 14-source aggregation, the cron heatmap, and the
in-progress content pipeline, all in the diagram+callout+table style.
2026-08-22 07:36:47 +03:00
thesabear 2bc4ee831d docs: add observability and notifications write-ups
Same visual template - diagrams, callouts, tables - covering the
Alloy/Loki/Prometheus pipeline and the MQTT+webhook fan-in to Slack.
2026-08-22 07:35:05 +03:00
thesabear 41a6f569b4 docs: rework security/hardening batch with diagrams and callouts
Mermaid diagrams up front, GFM alert callouts for key decisions and
gotchas, tables instead of bullet walls - replaces plain prose with
the visual template established for security-monitoring.md.
2026-08-21 23:17:10 +03:00
thesabear a4c334b3d8 README: comment out X/Instagram/TikTok/YouTube badges
Keep LinkedIn and Website visible; the rest stay in the file,
just hidden, not deleted.
2026-08-21 23:08:16 +03:00
thesabear d5f37b5787 docs: add security/hardening deep-dive write-ups
Secrets & PKI, Secret Distribution Model, SSO & Identity,
Firewall & Network Segmentation, DNS Naming Model, and Security
Monitoring - the first batch of per-system write-ups linked from
the new README, sourced and sanitized from the internal KB.
2026-08-21 22:48:50 +03:00
thesabear f37efc2654 README: redesign as architecture-first portfolio landing page
Replaces the bio-first README with a single-page overview covering
every system in the homelab (secrets/PKI, SSO, firewall, observability,
security monitoring, orchestration, notifications, registry/build,
Dashy SOC board, cron scheduler, content pipeline, IaC, disaster
recovery) plus a sanitized architecture diagram, linking out to a
full docs/ write-up for each. Bio/social links moved to the bottom.
2026-08-21 22:41:03 +03:00
thesabear 45748ff531 README.md: remove stale NetBox mention, update stack count 2026-08-09 20:42:06 +03:00
thesabear 2958564d88 Standardize .gitignore 2026-07-29 08:03:48 +03:00
thesabear f2158f91e7 Simplify Let's Connect badges to just platform name + icon 2026-07-06 02:54:16 +03:00
thesabear c7523453eb Overhaul intro README: accurate content, fixed/updated social links
Body text was describing a setup that no longer exists (GitLab
pipelines, a private registry) - replaced with what's actually running
(Gitea, Caddy/Authentik, Ansible/Kestra/n8n) and pointed the
"what you'll find" section at the new per-repo folder structure.
Fixed the LinkedIn link (was missing its scheme), added
Instagram/TikTok/YouTube, dropped the Bookstack wiki link.
2026-07-06 02:49:32 +03:00
thesabear c05c7164c8 Restructure into one folder per private repo/host, not a flat Docker/ dump
rocky-docker-lxc/, caddy-vm/, monitoring-vm/ (was missing entirely -
Grafana+Loki+Prometheus stack, refreshed and CA mount stripped same as
everything else), and automation/{ansible,automation-vm,iac}/ for the
three repos that live on the automation VM. Hawser is genuinely
deployed on all three of caddy-vm/monitoring-vm/automation-vm so it's
duplicated in each rather than picking one canonical home.

Old Ansible/ and "Infrastrucutre as Code/" content moved under
automation/ansible/old-playbooks and automation/iac/old-content as-is
for now - contents still need refreshing against the current repos and
a per-folder README, that's the next pass.
2026-07-06 02:41:53 +03:00
thesabear 08f705ffd7 Add sanitized compose for caddy-vm and automation-vm stacks
Caddy (+ a truncated/sanitized example Caddyfile showing the mTLS +
Authentik forward-auth pattern without the real subdomain list),
Hawser, Gitea (private instance only, dropped the public-mirror
service - that's already its own public thing), Kestra (genericized
the ansible-repo/SSH-key bind mounts), Mosquitto, n8n, NetBox,
Node-RED.
2026-07-06 02:25:54 +03:00
thesabear 55a8410474 Bring 15 stale entries in line with current private configs
Several of these had drifted so far they were unrecognizable (Nextcloud
was a bare minio stub, Ollama was missing the ollama service entirely,
Immich was missing 2 of 4 services). Also removed a real, exposed
Authentik OAuth client_id/secret that was sitting in Paperless-NGX's
entry (confirmed stale/rotated already, but shouldn't have been public
regardless) and stripped internal Caddy CA trust details from every
file per the same rule applied to nocodb/dashy etc.
2026-07-06 02:16:18 +03:00
thesabear 6c29d79e18 Add sanitized compose files for 21 rocky-docker stacks missing from the mirror
audiobookshelf, bazarr, beets, dashy, dockhand, docker-socket-proxy,
emby, ghost (+umami), jellyfin, kodi-mariadb, kopia, lidarr,
music-assistant, prowlarr, qbittorrent, radarr, seerr, sonarr, tdarr,
tinymediamanager, trilium — these run in the fleet today but had no
public entry at all. Same sanitization convention as the rest of the
repo (paths -> /path/to/..., secrets left as bare ${VAR} refs, no CA
trust details).
2026-07-06 02:05:09 +03:00
thesabear e16724fee3 Remove decommissioned entries; drop internal Caddy CA detail from nocodb
The public repo hadn't been touched since its initial import: 14 of its
Docker entries (Airsonic, Diun, Duplicati, Gitlab, Gotify, Grocy,
Jenkins, Jitsi, MariaDB, Minio, Organizr, Semaphore, Uptime Kuma,
Whoogle) no longer exist anywhere in the fleet. Also strips the
internal Caddy CA trust mount from the nocodb entry added earlier today
- that's an internal PKI detail, not something to showcase publicly.
2026-07-06 01:57:39 +03:00
thesabear f7bbb83192 Add sanitized NocoDB compose
New stack in the fleet (rocky-docker-lxc/nocodb) — mirrored here with
paths/secrets sanitized per the existing convention.
2026-07-06 01:53:41 +03:00
thesabear 973546647d new files from source 2026-06-09 10:20:07 +03:00