Infrastructure tutorials
Production-grade guides for Linux, servers, security and performance. Copy-paste commands, multi-distro support, written by engineers who run this in production.
Browse by topic
Linux
System administration, shell scripting, package management
Hosting & Servers
Web servers, reverse proxies, SSL, domains
Security
Firewalls, hardening, encryption, access control
Performance
Caching, optimization, profiling, load testing
Databases
MySQL, PostgreSQL, Redis, backups, replication
Networking
DNS, load balancing, VPN, TCP/IP, routing
DevOps
CI/CD, Docker, Kubernetes, automation
Monitoring
Logging, alerting, metrics, observability
Most viewed
Install and configure Deno for web development with systemd and reverse proxy
hostingInstall and configure Uptime Kuma for website monitoring with SSL and email alerts
monitoringInstall and configure Caddy web server with automatic HTTPS and reverse proxy
hostingInstall and configure TimescaleDB with PostgreSQL for high-performance time-series data
databasesInstall and configure Ollama for local AI models on Linux servers
devopsRecently published
Configure PostgreSQL 17 SSL encryption and certificate-based authentication
databasesSet up HAProxy SSL termination with Let's Encrypt certificates
networkingConfigure HAProxy with Consul for dynamic service discovery
networkingConfigure PostgreSQL 17 connection pooling with PgBouncer for high availability
databasesConfigure Kubernetes secrets management with External Secrets Operator and HashiCorp Vault
devopsConfigure OSPF dynamic routing with FRRouting for enterprise network failover
Set up Open Shortest Path First (OSPF) protocol using FRRouting for dynamic network routing, multi-area configurations, and automatic failover in enterprise environments.
Optimize Node.js application performance with PM2 clustering and memory management
Learn how to optimize Node.js application performance using PM2 process manager with clustering, memory limits, and monitoring. This tutorial covers production deployment with systemd integration and advanced performance tuning.
Set up BGP routing with FRRouting for dynamic network routing and failover
Configure BGP routing with FRRouting to implement dynamic network routing, automatic failover, and high availability for enterprise network infrastructure with route filtering and policy management.
Integrate SonarQube with Kubernetes and Helm charts for automated code quality scanning
Deploy SonarQube on Kubernetes using Helm charts with PostgreSQL database, configure automated code scanning workflows, and implement persistent storage for comprehensive code quality analysis in your CI/CD pipeline.
Integrate SonarQube with Kubernetes security scanning workflows for continuous code quality analysis
Set up SonarQube scanner in Kubernetes pods with admission controllers for automated security scanning. Configure CI/CD pipeline integration and security reporting for continuous code quality analysis in containerized environments.
Integrate Apache Airflow with Kubernetes RBAC and service accounts for secure workflow orchestration
Configure Apache Airflow KubernetesExecutor with proper RBAC permissions, service accounts, and role bindings to securely orchestrate workflows in Kubernetes environments with least-privilege access controls.
Install and configure Helm 3 for Kubernetes package management with security and private repositories
Learn to install Helm 3 on Linux, configure private repositories with authentication, implement security best practices with RBAC, and integrate with CI/CD pipelines for automated Kubernetes deployments.
Install and configure HAProxy for high availability load balancing
Set up HAProxy with SSL termination, keepalived for high availability, and comprehensive health checks to distribute traffic across multiple backend servers with automatic failover.
Don't want to manage this yourself?
We handle infrastructure for businesses that depend on uptime. Fully managed, with one fixed contact who knows your setup.
You get one fixed contact who knows your setup
At their desk in Rotterdam 17:27 · reachable in a message, no ticket form