Engineering notes
The design decisions behind Keenrig, written in enough detail that you can argue with them. RSS
Self-hosting n8n: RAM, data and webhooks
Install n8n on your own VPS with a domain, HTTPS and working webhooks. How much RAM it needs, where its data lives, and what this setup does not do.
Self-hosting without a public IP (behind CGNAT)
A home or office server behind CGNAT cannot be reached on ports 80/443. How to tell, and the two ways out: open the ports, or go through a tunnel.
Self-host apps without a domain name
No domain needed to start self-hosting with Keenrig: the admin panel runs on your server IP. Add a domain later with one record, or use a Keenrig Cloud name.
A cloud disconnect switch people dare to press
The right to leave only means something if it breaks nothing. This is the preflight, the honest list of what you actually lose, and how to come back.
Pin the digest, never the latest tag
Every Keenrig catalog manifest pins a specific digest and is Ed25519-signed. Here is why, and why "just use the latest tag" is a slow-acting trap.
Why local is the source of truth, not the cloud
Keenrig's first principle: the server holds all the state it needs to run; the cloud is an optional layer on top. What that costs, and what it buys.