글

no space left on device - 12 Causes and Fixes for Docker, Linux and macOS

이미지
Docker just died with no space left on device , and df -h on your laptop probably still shows tens of gigabytes free. That mismatch is the problem: the message is the kernel's ENOSPC errno stringified by whatever tool happened to be writing, and it can mean out of data blocks, out of inodes , or out of room inside Docker's own virtual disk — three unrelated fixes. The tool printing the error almost never tells you which filesystem ran out. docker build reports it from inside a VM, Postgres reports it from /dev/shm , a CI runner reports it from a 14 GB ephemeral volume. This page gives you the one-command fix first, then 12 distinct causes with a reproduction and a fix for each, then a checklist for the case where none of them match. Error no space left on device Where it happens Any Linux filesystem write (ENOSPC, errno 28) - surfaced by Docker Engine / BuildKit, Docker Desktop on macOS and Windows, Node.js (ENOSPC), Postgres, apt/yum, Kubernetes kubelet, CI runne...

ImagePullBackOff in Kubernetes: 12 Causes and How to Fix Each

이미지
ImagePullBackOff is not the error. It is the kubelet telling you that it already failed to pull your container image several times and is now waiting before it tries again, so the real message is one line above it in the pod events. The pull happens on the node , using the node's DNS, the node's network path, and the credentials you handed the kubelet - not from the machine you ran kubectl apply on. That single fact explains most of the confusing cases: the image pulls fine on your laptop and still fails in the cluster. This page gives you the one command that reveals the actual failure, the fastest fix for the common case, then 12 distinct causes - wrong tag, missing or misplaced pull secret, Docker Hub rate limits, expiring registry tokens, architecture mismatch, blocked egress, private CA, full disk - each with a reproduction, the corrected lines, and a way to confirm it is really fixed. Error STATUS: ImagePullBackOff, preceded in the pod events by: Warning Failed...

git@github.com: Permission denied (publickey) - 12 Causes and Fixes

이미지
git@github.com: Permission denied (publickey) is GitHub's SSH server telling you it finished the handshake and your client never presented a key it would accept. The message is not about repository permissions, not about your password, and not about the repo existing — authentication failed before GitHub ever looked at which repository you asked for. That single fact kills most of the guesswork. Either your client offered no key at all , or it offered a key GitHub does not have on file for an account with access. This page walks the 12 causes that produce this exact string, each with a reproduction you can run, the lines that change in the fix, and a command that proves it worked. If your case matches none of them, the diagnostic checklist narrows an unknown occurrence down to one of them in about six commands. Error git@github.com: Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repo...

TypeError: 'str' object does not support item assignment - 12 Causes and Fixes

이미지
TypeError: 'str' object does not support item assignment means you tried to write into a Python string: s[0] = "H" , s[0:4] = "...." , or data["key"] = value where data turned out to be text instead of a dict. Strings are immutable , so Python never exposes a way to store into one - str simply has no __setitem__ . That single message covers two very different bugs. Either you genuinely want to edit characters and have to rebuild the string instead of patching it, or - far more often in real code - the name you indexed is a str when you expected a dict , list , or parsed JSON object. Below are 12 causes ordered by how often they show up in production code, each with a reproduction, the corrected lines, and a way to confirm the fix. If your case matches none of them, work the diagnostic checklist - it separates the "edit text" bug from the "wrong type" bug in two steps. Error TypeError: 'str' object does not s...