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
devopsSet up multi-location monitoring with distributed Uptime Kuma instances
Deploy multiple Uptime Kuma instances across different geographic locations to monitor your services from various vantage points. This setup provides comprehensive monitoring coverage, reduces false positives, and enables regional performance analysis with centralized alerting.
Configure Node.js JWT authentication with Redis session storage and security hardening
Set up secure JWT authentication for Node.js applications with Redis session storage, security middleware, and production-ready hardening practices.
Set up OpenTelemetry metrics collection with Prometheus integration for distributed system monitoring
Configure OpenTelemetry Collector to gather metrics from distributed services and export them to Prometheus for comprehensive observability monitoring. This integration provides unified metrics collection across your microservices architecture.
Optimize CockroachDB 24.3 performance with advanced tuning and configuration
Master advanced CockroachDB 24.3 performance optimization through memory, CPU, storage, and query tuning. Configure cluster parameters, connection pooling, and indexing strategies for production-grade distributed SQL workloads.
Set up distributed tracing for Node.js and Python microservices with OpenTelemetry and Jaeger
Configure end-to-end distributed tracing across Node.js and Python microservices using OpenTelemetry instrumentation and Jaeger backend with Elasticsearch for centralized trace collection and analysis.
Implement OpenTelemetry distributed context propagation across microservices with automatic instrumentation
Set up comprehensive distributed tracing across microservices using OpenTelemetry with automatic context propagation, trace correlation headers, and framework-specific auto-instrumentation for Python, Java, and Node.js applications.
Configure Varnish cache invalidation with automated purging strategies for high-performance web acceleration
Learn to configure advanced Varnish VCL for cache invalidation, implement PURGE and BAN strategies, and set up automated cache tagging for optimal performance. Master selective invalidation techniques and monitoring for production-grade web acceleration.
Configure Node.js application logging with Winston and log rotation for production
Set up Winston logger with structured JSON logging, multiple transports, and automated log rotation using winston-daily-rotate-file for production Node.js applications. Configure comprehensive error handling and log management best practices.
Setup Caddy with Consul service discovery for dynamic load balancing
Configure Caddy web server to automatically discover backend services through Consul, enabling dynamic load balancing without manual configuration updates. This setup provides high availability and automatic failover for microservices architectures.
Configure Node.js application clustering with PM2 and load balancing
Set up PM2 clustering to scale Node.js applications across CPU cores with NGINX load balancing. Monitor performance and optimize resource utilization for high-traffic production workloads.
Set up Node.js application security with Helmet and rate limiting
Secure your Node.js Express applications against common vulnerabilities with Helmet.js middleware and implement rate limiting to prevent abuse and DDoS attacks.
Configure Linux cron jobs and system task scheduling with best practices
Learn to configure cron jobs and systemd timers for automated task scheduling on Linux systems with proper logging, security, and troubleshooting techniques.
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
Rotterdam 03:08 · reachable in a message, no ticket form