Skip to main content
DevOps Insightsguides & answers

Topic

Linux & Networking

Articles
10
Answered questions
1
Guides
2
On this page · 9 sections

Every container, cluster and pipeline eventually resolves to a Linux process holding a file descriptor. When something behaves inexplicably a layer up, the answer is usually here: a permission, a full disk, a port already bound, a process that ignored a signal.

The same applies to networking. Reverse proxies, timeouts and certificates are far easier to reason about once you have seen how a request actually traverses them.

Learning paths

Existing pages in an order where each step answers a question the previous one raised, with an exercise at the end.

Guides

Step-by-step, with copy-paste commands and an assistant that answers questions about the guide you are reading.

Troubleshooting

Named errors and symptoms, each with its causes, a command that confirms each one, and the fix.

Commonly confused

Pairs of things that get mistaken for one another, and the problem the mix-up causes.

Why it works that way

The design decision behind the behaviour, and what it costs you.

What happens if

A failure followed step by step: what each part of the system does, and what you can change.

Tools

Run in your browser; nothing you paste is sent anywhere.

Articles

Ordered by how much they are read.

Diagram: nginx terminating TLS for a client and proxying to three upstream application servers.
7 min
InfrastructureIntermediate

Nginx as a Reverse Proxy: The Config, and What Breaks

The six lines that proxy, the four headers most examples omit, and the three failures a reverse proxy actually produces — 502, 504 and the 499 nobody receives.

#Nginx#Linux#SRE

Neeraj Jha

529
Terminal showing ss, journalctl, df and du, ps and dmesg commands, ending with a kernel out-of-memory line.
7 min
DevOpsBeginner

Linux Commands Every DevOps Engineer Must Know

A practical reference of essential Linux commands for DevOps — file operations, text processing, networking, process management, and more.

#Linux#SRE

Neeraj Jha

Updated

485
Diagram: traffic from a client through an Ingress to a Service and on to three Pods, with the Service's cluster DNS name.
8 min
ContainersIntermediate

Understanding Kubernetes Networking: Services, Ingress, and DNS

Deep dive into Kubernetes networking — ClusterIP, NodePort, LoadBalancer, Ingress controllers, CoreDNS, and Network Policies explained with examples.

#Kubernetes#Nginx

Neeraj Jha

Updated

220
A five-step container hardening list beside a docker run command that drops capabilities and runs read-only.
10 min
SecurityAdvanced

Securing Docker Containers, in Order of What It Buys You

The same ten-item checklist, ordered by the threat each item actually closes — and honest about which three matter most and what none of them protect you from.

#Docker#Linux

Neeraj Jha

Updated

169
A Bash script using set -euo pipefail, an ERR trap, a required argument and quoted expansions, each annotated.
9 min
ScriptingBeginner

Shell Scripting for DevOps: Essential Bash Automation

Learn essential Bash scripting for DevOps — variables, conditionals, loops, functions, error handling, cron jobs, and practical one-liners.

#Linux

Neeraj Jha

Updated

159
Diagram: an Ansible control node running a playbook over SSH against three web hosts from its inventory.
7 min
InfrastructureBeginner

Ansible for DevOps: Automating Server Configuration

Get started with Ansible for server automation — inventory, playbooks, roles, common modules, and best practices for DevOps workflows.

#Ansible#Linux

Neeraj Jha

157
Diagram of Will pip install here?: 1. You run pip install, 2. Inside a venv?, 3. Marker file present?, 4. pip.conf override?, 5. Refused.
3 min
ScriptingBeginnerNew

pip Says externally-managed-environment: What to Do

Why pip install now fails with externally-managed-environment on Ubuntu 24.04, Debian 12 and Homebrew, and the three fixes that work: a venv, pipx, or apt. Plus why it passes in GitHub Actions and fails in docker build.

#Python#Docker#Linux

Neeraj Jha

Diagram of One request, two controllers: 1. Request arrives, 2. Ingress NGINX matching, 3. Gateway API matching, 4. No match, 5. 404.
3 min
DevOpsIntermediateNew

Leaving Ingress NGINX? Five Things That Will Quietly Return 404

Ingress NGINX was retired in March 2026, and moving the same rules to Gateway API can break routes that worked for years. Five behaviours from the Kubernetes project's own write-up, in plain language, with a check to run before you switch.

#Kubernetes#Nginx

Neeraj Jha

Diagram of What a stop and start does to one instance: 1. Stop pressed, 2. Charges pause, 3. Host released, 4. Public IP released, 5. Start pressed, 6. New public IP.
4 min
Cloud ComputingBeginnerNew

Stop, Start, Surprise: What Your EC2 Instance Forgets

What rebooting, stopping, hibernating and terminating an EC2 instance each keep and lose, from AWS's own comparison. Four actions that sound similar and are not, including the public IP that changes and the disk that vanishes.

#AWS#Linux

Neeraj Jha

Diagram of Why a 9 GB build dies at 6 GB: 1. Job starts on ubuntu-26.04, 2. Build writes temp files, 3. Quota reached, 4. disk quota exceeded, 5. Fix applied.
3 min
CI/CDIntermediateNew

Ubuntu 26.04 Puts /tmp in RAM: Big CI Builds Run Out

Ubuntu 26.04 mounts /tmp as a RAM disk with a per-user quota, so large builds fail with disk quota exceeded on the ubuntu-26.04 runner. How to check your job and the two-line fix.

#GitHub Actions#Linux#CI/CD

Neeraj Jha

Answered questions

Real questions from the community, with an accepted answer.

Other topics