Linux & DevOps Troubleshooting Blog
Practical guides for Linux engineers — NGINX debugging, process troubleshooting, CIS hardening, and production incident response.
Browse by category
Filter by topic
79 posts · page 9 of 9
NGINX Upstream Keepalive Explained: Why Missing It Causes 502 Errors
Missing keepalive in your NGINX upstream block silently kills connections under load. Here's exactly what keepalive does, how TCP connection reuse works, and the production-ready config that stops 502s before they start.
Docker Ate My Disk: Fixing Log Rotation Before It Kills Production
How a single verbose container filled a 500GB disk in 72 hours, and the exact daemon.json config that stops it from ever happening again.
NGINX SSL Hardening: From C Grade to A+ on SSL Labs
A step-by-step walkthrough of the NGINX TLS configuration changes that take you from a mediocre SSL rating to a perfect score — without breaking compatibility.
Reading Logs Like a Detective: A Field Guide to Incident Triage
The exact commands and mental models I use to go from 'something is wrong' to 'I know exactly what happened' in under 15 minutes.
Docker Networking Demystified: bridge, host, and overlay
The three Docker network modes that matter for production — what they actually do, when to use each, and the gotchas that'll bite you if you pick the wrong one.
Replacing iptables with nftables: A Practical Migration Guide
iptables is showing its age. nftables is the modern replacement — cleaner syntax, better performance, and already the default on most distros. Here's how to migrate.
strace, lsof, and ss: The Trio That Solves Every Mystery
When logs give you nothing and the debugger isn't an option, these three tools let you see exactly what a running process is doing at the system call level.