I've used #Docker for 10+ years and I thought I knew how image layers work.
Then I asked one innocent question: if layers are just tar archives stacked on top of each other, how can a layer DELETE a file from a previous one? 🧵
loige.co/hidden-desig...
loige.co
The hidden design compromises of Docker layers
How Docker and OCI image layers represent filesystem changes, why deleting a file needs special whiteout entries, and what happens if you create a file called .wh.foo.