-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Broken since docker 26 #534
Comments
For me this seems to be related to containerd storage engine. I think it broke as I switched to it. |
I agree re. containerd storage engine. I had containerd enabled on Docker Desktop with Docker v26.1.4 on Windows 11 with WSL2 - it was broken with containerd enabled but disabling containerd fixed it. It would be helpful if it was compatible with containerd though. |
Anyone know how to download and run a earlier docker version on mac? Brew only has the latest version. I tried downloading from https://download.docker.com/mac/static/stable/aarch64/but got |
ah found the install instructions: https://docs.docker.com/engine/install/binaries/ In my case running |
Disabling containerd in Docker Desktop settings on OSX has fixed it for me. (With latest version of Docker Desktop : Docker version 27.0.2, build 912c1ddf8a) |
The issue is the heuristic here is broken because newer oci layers do gzip small layers, so they are skipped because they don't fill the buffer. Commenting out that check means I can load |
I hacked around it, pushed my changes here: https://github.com/froody/dive/tree/crane quite a significant change, basically uses crane as a dest for docker to "push" to, much faster downloads, and now we have the manifest/config ahead of time to decide on the file format |
Wow, thank you for your work! Can you make a PR? |
@reneleonhardt ok I'll try |
Thank you, let me know if I can help 🙂 |
Disabling containerd does it on OSX (Docker Desktop). |
(workaround - irrelevant, see next comment)
Instead of disabling it, you can use Docker-in-Docker: docker run -d --name dind --privileged docker
sleep 2
docker exec -it dind \
docker run --rm -it \
-v /var/run/docker.sock:/var/run/docker.sock \
wagoodman/dive [image/command] # or jauderho/dive for ARM64 While not a solution at tool-level, this does provide a workaround without abandoning the privileges of using the containerd store You can also use deanayalon/dive-dind instead, which is a simple 'docker' docker image with the dive binary installed (Source) docker run -d --privileged --name dive-dind deanayalon/dive-dind
sleep 2
docker exec -it dive-dind dive [image/command] The repository also offers a convenient shell script to manage the entire thing, including quick and simple transfer of local images into the dive-dind container There's also the This was created as I could not get froody's binary working |
Fixes wagoodman#507 Fixes wagoodman#510 Fixes wagoodman#526 Fixes wagoodman#534 Co-authored-by: Maddog2050 <17902029+Maddog2050@users.noreply.github.com>
Fixes wagoodman#507 Fixes wagoodman#510 Fixes wagoodman#526 Fixes wagoodman#534 Co-authored-by: Maddog2050 <17902029+Maddog2050@users.noreply.github.com>
Fixes wagoodman#507 Fixes wagoodman#510 Fixes wagoodman#526 Fixes wagoodman#534 Co-authored-by: Maddog2050 <17902029+Maddog2050@users.noreply.github.com>
What happened:
Github ubuntu 20.04 updated the docker version from 24 to 26
What you expected to happen:
dive continued to work
How to reproduce it (as minimally and precisely as possible):
Run dive with docker 26
Anything else we need to know?:
Environment:
The text was updated successfully, but these errors were encountered: