Professional notes by Craig Johnston
long-form, short-form, working drafts · since 2008
long-form, short-form, working drafts · since 2008
VOL. XIX · MMXXVI
126 NOTES IN PRINT
126 NOTES IN PRINT
Tag: DevOps
CXXV
Your Git Forge Belongs on Your Cluster: Forgejo
Self-hosted source, CI/CD, and a registry, on the lightweight fork that left its for-profit parent
2026-07-17
CVIIIBuild a Kubernetes Cluster You Own
The vendor-neutral substrate for a self-hosted platform: kubeadm, containerd, and Cilium on generic VMs
2026-06-21
CIVRunning Ollama and pgvector on Kubernetes
Vector Search Without the Vector Database, Part 3
2026-06-07
LXXXIIThe Pre-Commit Review Gate
AI on a Leash: Mechanical Self-Review for Claude Code
2026-04-22
LXXXPostgreSQL to OpenSearch with PySpark on Kubernetes
Date-windowed ETL, idempotent upserts, and CronJob scheduling
2026-02-25
LXXIXGoReleaser with Cosign Signing and Syft SBOM
Signed Builds and Supply Chain Security for Go Projects
2026-02-11
LXXVIIIAI on a Leash: Complete Go Project Configuration
AI on a Leash for Go
2026-02-09
LXXVIIRalph's Uncle
AI on a Leash
2026-02-06
LXXVIGo's Constraints and Idioms Make AI Coding Better
From Vibe Coding to Vibe Engineering
2026-02-04
LXVApache NiFi: Production Kubernetes Deployment
Apache NiFi Part 1
2022-07-30
XXXKubernetes Team Access - RBAC for developers and QA
Role Based Access Control
2018-07-10
XXVIIA Microservices Workflow with Golang and Gitlab CI
Continuous Integration & Deployment
2018-06-22
XXIVReverse Proxy in Golang
Retrofit security proxy to prevent XSS and code injection.
2018-06-15