Closed cmamigonian closed 3 years ago
Issue Label Bot is not confident enough to auto-label this issue. See dashboard for more details.
As I've done more investigation, the overlay
filesystem is what ends up filling up. I'm trying to see where, but when I do a du -sh
in /
I get permission denied on a bunch of the /proc/
subdirectories. Is that a clue?
After more research it appears this is an issue underlying Buildkit in that the entire filesystem is snapshotted on each layer. Can anyone else confirm this is the case?
I'm seeing a similar issue when building in a Gitlab CI pipeline using docker+machine with alpine:latest base docker image.
After debugging I found that we were using the native
back-end (which copies each layer), and had a large layer early in our build was causing our problem. Once we squashed the base image, the build worked.
In our case, our 3rd layer was 4.8GB, and we had 8 layers after this, and with only 25GB available on our build instance, we were running out of space when the 9th layer was being applied.
Closing this as using Ubuntu nodes with overlayfs
solved the problem.
I'm building a fairly large Docker image (~9GB) in a k8s pod:
The pod ends up failing because the node runs out of space, and it's due to the
img
container growing to be well over 40GB (my nodes are 50GB EBS volumes). I see even trivialCOPY
commands of single files take forever to complete and the container will grow several GB in that time.Granted I'm a novice with k8s and completely new to img, but am I doing something dumb here, or is there something underlying with img that's an issue?