Skip to content

Tag: self-hosting

All the articles with the tag "self-hosting".

Penpot: Self-Host an Open Source Figma

Penpot: Self-Host an Open Source Figma

Penpot 2.19.1 on your own server: the Docker Compose stack, what it costs in RAM, what it does better than Figma, and where it still lags. Verdict inside.

Homebox: Self-Hosted Home Inventory

Homebox: Self-Hosted Home Inventory

Run Homebox in Docker, give every box a QR label and asset ID, attach receipts and warranties, and know when Grocy, Snipe-IT, or a spreadsheet fits better.

Your Admin Panel Has a Side Door

Your Admin Panel Has a Side Door

Admin blocks on nginx, Caddy, and Traefik let 2 or 3 of 13 spellings through. A forged Remote-User fooled all three. Caddy's open admin port took a new config.

Rate Limits That Lock Out the Wrong User

Rate Limits That Lock Out the Wrong User

Guide-style rate limits behind a CDN locked out a bystander on nginx, Caddy, and Traefik. Trusting X-Forwarded-For let a forger through 20 of 20. Fixes tested.

Security Headers That Break Your Apps

Security Headers That Break Your Apps

Seven copy-paste security headers gave nginx static files none, let Traefik overwrite an app's own CSP, and blocked self-framing. Tested configs for all three.

Postgres Autovacuum Tuning for Small DBs

Postgres Autovacuum Tuning for Small DBs

Leave most autovacuum globals alone, raise the cost limit, and give your one hot table a per-table scale_factor. Tested on postgres:18.6 with real numbers.

Home Assistant Blueprints: Write Once

Home Assistant Blueprints: Write Once

Stop copy-pasting the same motion-light automation nine times. Import, write, and update Home Assistant automation and script blueprints with annotated YAML.

LLM Semantic Caching: Stop Paying Twice

LLM Semantic Caching: Stop Paying Twice

Exact-match vs semantic caching for LLM calls: a small Python cache, LiteLLM and RedisVL setups, and real scores showing why restart and stop nginx collide.

Reverse Proxy TLS: What the A+ Hides

Reverse Proxy TLS: What the A+ Hides

Same A+ before and after hardening, yet nginx drops from 25 TLS 1.2 suites to 3, and an old curve list silently strips post-quantum key exchange on all three.