Analyzing Large Java Heap Dumps Using Memory Analyzer CLI
When MAT UI fails to handle very large heap dumps, the Memory Analyzer CLI provides a reliable alternative on Linux. This post walks through the setup and commands needed to parse multi-gigabyte dumps and generate shareable HTML reports.
read more
Demystifying Docker DNS: How Containers Talk
An overview of how Docker’s built-in DNS resolver enables container-to-container communication and service discovery. Covers default configurations, custom DNS setups, and practical use cases.
read more
Working with Multiple Content-Security-Policy Headers
Multiple Content-Security-Policy headers do not combine; the most restrictive one always wins. Learn how to correctly configure CSP in nginx by consolidating directives into a single header.
read more
The Beer Drinker's Guide to SAML Duo Security
A plain-English walkthrough of how SAML authentication works, using the analogy of buying a beer at a concert. Covers IdP and SP configuration, IdP-initiated vs SP-initiated flows, and practical troubleshooting steps.
read more
How to Start a SysV Init Script After Network Starts
Configure a legacy SysV init script to wait for network availability in RHEL 7 by adding the Required-Start LSB directive. This guide shows how systemd honors those headers so third-party initscripts start in the correct order.
read more
Override systemd unit files
Learn how to safely override systemd unit and timer files using systemctl edit, avoiding the pitfalls of editing package-managed files directly. Covers creating drop-in overrides, full replacements, and reverting changes.
read more