Tag: DevOps
25 posts
-
Terraform for Infrastructure as Code: HCL Modules, Providers, Remote State, Workspaces and a VPC Example
Terraform IaC guide: HCL, modules, AWS/Azure/GCP providers, remote state and locking, workspaces, security practices, and a VPC/ALB example skeleton.
-
How Kubernetes Actually Works: Scheduler Scoring, etcd Raft, Reconciliation Loops and kube-proxy
Deep dive into Kubernetes: kube-scheduler filtering & scoring, kube-proxy iptables/IPVS, etcd Raft and key model, controller reconciliation.
-
Logging in Node.js with Winston: Levels, Transports, Formats, Structured Logs and Child Loggers
Logging in Node.js with Winston: log levels, transports, formats, structured logging, error logging, child loggers, and a production setup.
-
Running Node.js in Production with PM2: Cluster Mode, Ecosystem Files, Logs and Zero-Downtime Reloads
Deploying Node.js with PM2: cluster mode, ecosystem files, monitoring, log management, auto-restart on reboot, zero-downtime reloads and environment variables.
-
pnpm in Practice: Content-Addressable Store, Strict node_modules, Workspaces, and Migration
How pnpm stores packages (hard links plus a symlinked node_modules), why its strictness breaks code that relied on phantom dependencies, workspaces and filtering, pnpm 10 changes, migrating lockfiles with pnpm import, and Docker/CI setup.
-
Node.js + Nginx Reverse Proxy Setup
Production Nginx reverse proxy for Node.js: proxy headers and trust proxy, Let's Encrypt TLS, buffers and timeouts, limit_req rate limiting, WebSocket upgrades, upstream load balancing, and response caching.
-
Nx Monorepos in Practice: Affected Builds, Cache Inputs and Module Boundaries
How Nx decides what to rebuild: affected commands and the CI base SHA, cache inputs for env vars and root files, module boundary rules, and Nx vs Turborepo.
-
Managing Environment Variables with dotenv: Multi-Environment Files, Defaults, Validation and Secrets
Managing environment variables in Node.js with dotenv: loading .env files, ES modules, custom paths, multi-environment setups, defaults, validation, and keeping secrets out of git.
-
Terraform on AWS in Practice: Resources, Variables, Remote State, Modules and Workspaces
Manage AWS with Terraform: resources, variables and outputs, a VPC with EC2 and security groups, remote state for teams, modules, workspaces and CI.
-
Nginx from the Inside Out: Event Loop and Workers, Config Inheritance, Proxying, TLS and Caching
Nginx guide: event loop & workers, config inheritance, load-balancing algorithms, production patterns—plus reverse proxy, SSL/TLS, caching, and tuning.
-
Debugging Kubernetes Pods: CrashLoopBackOff, OOMKilled, ImagePullBackOff, Pending and Probe Failures
What kubectl describe and logs --previous tell you: exit codes 1/127/137/143, OOMKilled vs eviction, image pull errors, scheduler messages and probe restarts.
-
Kubernetes in Practice: Pods, Deployments, Services, Ingress, HPA and kubectl Troubleshooting
Run apps on Kubernetes with Pods, Deployments, Services, ConfigMaps, Secrets and Ingress, plus resource limits, HPA, Helm and kubectl troubleshooting.
-
Linux and macOS Terminal Commands for Developers: GNU vs BSD Differences and Troubleshooting
A practical Linux and macOS terminal reference for developers, with the why behind each command, GNU vs BSD gotchas, and real troubleshooting workflows.
-
Microservices Architecture: Service Boundaries, Messaging, Sagas, and Resilience
The honest trade-off between microservices and a monolith, then service decomposition, communication patterns, API gateways, sagas, resilience patterns, tracing and database-per-service.
-
Git Team Workflow: Branching Strategies, Pull Request Reviews and Commit Conventions
Best practices for Git branching strategies, pull request reviews, and commit conventions for teams shipping code together.
-
GitHub Actions CI/CD: Workflows, Jobs, Matrix Builds, Secrets and Deployment
Build CI/CD with GitHub Actions: workflows, jobs and runners, triggers and path filters, matrix builds, secrets and environments, caching, and deployment gates.
-
GitHub Actions Workflows: CI on Every Push, Deploy Jobs, Secrets, Caching and Monorepo Filters
Automating CI/CD with GitHub Actions: core concepts, a test workflow on every push, deployment workflows, secrets, conditional execution, dependency caching and monorepo path filters.
-
Docker Multi-Stage Builds: Smaller Images, Layer Caching, BuildKit Cache Mounts and Secret Leaks
Shrink Docker images from over 1GB to a fraction of that with multi-stage builds. Layer caching, cache invalidation, and secret leakage explained.
-
Docker Security in Production: Non-Root Images, Secrets, Capabilities and the Mistakes That Expose Hosts
Harden Docker containers where it matters: non-root images that Kubernetes accepts, build secrets that do not leak into layers, dropping capabilities, why -p bypasses your firewall, and why mounting docker.sock is root on the host.
-
Edge Functions and Serverless: Cloudflare Workers vs Lambda@Edge, Cold Starts and Trade-offs
What edge functions are good and bad at: Cloudflare Workers vs Lambda@Edge vs Deno Deploy, what actually reduces cold starts, KV/D1/R2 storage patterns, real limits, security and cost.
-
Git Interactive Rebase: Squash, Fixup, Reword, Split, and Recovering from a Bad Rebase
Use git rebase -i to squash WIP commits, reword messages, split and reorder commits before a PR, and recover when a rebase conflicts or goes wrong.
-
Docker Compose for Multi-Container Apps: Services, Networks, Volumes, Health Checks and Production Settings
Running multi-container apps with Docker Compose: service definitions, service-name DNS, named volumes vs bind mounts, .env interpolation, health checks, override files, and the production pitfalls.
-
Docker & Kubernetes Beginners Guide
A beginner guide to Docker and Kubernetes, covering containers, images, pods, and deployments with hands-on examples.
-
Kubernetes Deployment Strategies: Rolling Update, Recreate, Blue/Green and Canary
How Kubernetes rolling updates and Recreate work, what maxSurge and maxUnavailable really do, and how to build blue/green and canary releases on top, tried on minikube.
-
Deploying a C++ Service to Production: glibc Floors, Debug Symbols, systemd and SIGTERM [#50-5]
Ship a C++ server that starts everywhere and stops cleanly: glibc version floors, static vs dynamic linking, split debug info, systemd units and SIGTERM.