Open 5HT2 opened 2 years ago
I have working arm images here: https://hub.docker.com/r/jauderho/dive/tags
thanks @jauderho
docker pull jauderho/dive:latest
docker run --rm -it \
-v /var/run/docker.sock:/var/run/docker.sock \
jauderho/dive:latest
works on Alma linux 9 running on Apple M1
I've managed to get dive
working on arm64 Ubuntu, for dissecting Podman images.
The @oshanz's answer works fine for dissecting Docker images, even on arm64 based Ubuntu. But, I encountered issues as soon as I've tried dissecting the images built by Podman. The above command was working for Docker images, because the tool relies on communication over docker.sock
to read the images from the host machine. As I understood, relying on docker.sock
is a "bad pattern", and there is no way to replicate it for Podman.
For dissecting Podman images you have to use the dive
binary on your host machine. Since there is no arm64
binary available at release, you have to build it by yourself. I managed to get it working, thanks to @barsa-net's gist. All you have to do is to save the Dockerfile (from the gist) in an empty directory, and run the following command (also provided by @barsa-net):
DOCKER_BUILDKIT=1 docker build --target=export-stage --output dist .
You can then install this binary, and make it globally available on your Ubuntu system, by running the following command:
sudo install ./dist/dive /usr/bin/
Done. 🎉
Huge thanks to @barsa-net ❤️ for making the mentioned gist.
Hey @oshanz
I have some issues about installing dive on my ubuntu 20.04 ARM64 vm. Indeed, when I use your commands, the last message that I get is : "Use "dive [command] --help" for more information about a command."
So it looks like the dive command is now available, but when I write in my terminal the command : dive imageID With the id of the image that I want to analyze, it keeps telling me : "Command 'dive' not found"
Would you have a solution to solve this problem ?
Hello, I was wondering if this image would get arm64 support, seeing as Golang is arch-agonistic.
Currently, using the given build instructions I get
I'm presuming it's still relying on some docker-specific things which can be made platform-agonistic.