dive icon indicating copy to clipboard operation
dive copied to clipboard

`arm64` support

Open 5HT2 opened this issue 2 years ago • 4 comments

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

WARNING: The requested image's platform (linux/amd64) does not match the detected hostplatform (linux/arm64/v8) and no specific platform was requested

I'm presuming it's still relying on some docker-specific things which can be made platform-agonistic.

5HT2 avatar Feb 22 '22 16:02 5HT2

I have working arm images here: https://hub.docker.com/r/jauderho/dive/tags

jauderho avatar Mar 05 '22 21:03 jauderho

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

oshanz avatar Oct 18 '22 04:10 oshanz

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.

tsopeh avatar Jan 30 '23 16:01 tsopeh

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 ?

JulienORIOL avatar May 30 '23 17:05 JulienORIOL