Closed jeshan closed 3 years ago
It should probably be cleaned up but I have already ensured to build a very small image through the final stage build.
Give it a try with docker pull jeshan/ddisasm
and let me know your feedback.
I've just realised that we already have dockerfiles but it looks like they may depend on some private Grammatech images :confused:
I've just realised that we already have dockerfiles but it looks like they may depend on some private Grammatech images
As @aeflores mentioned in another thread, we have been pushing for sometime to put regular binary releases of ddisasm in place, but there has been a significant amount of flux in the internal CI configuration and package creation as we work on that. So the dockerfiles are not suitable for general purpose use in there current state as they depend on some internal resources.
We will absolutely want to publish a Docker container for ddisasm. Thank you for your contributions to that end!
Thanks, Kevin. Latest changes include the correct LIEF version and added gtirb* binaries. This PR is now ready for review.
@jeshan, thanks for raising this and consolidating these tickets! We have been meaning to do this for some time but your elevation of this issue has been super useful in helping us prioritize.
You mention above:
I have not yet signed the CLA (and it would be nice to skip the formality for small contributions)
Unfortunately, we really must have contributors sign the CLA for any contribution (we have asked before and had this confirmed, even for much smaller contributions than yours). On the plus side it should be a very quick and easy process, and all you lose is your ability to restrict our use of your contributions to ddisasm. If there's any chance you might make more contributions in the future I'd urge you to consider completing the CLA.
Okay, we've now posted a Dockerfile into the base of the repository and uploaded an image to Docker Hub at grammatech/ddisasm. We went with Ubuntu 20 instead of Ubuntu 21 because we aren't yet testing regularly on Ubuntu 21.
Thanks for making this happen.
OK Eric but there's room for improvement, viz: the docker image just pushed is about twice the size than mine and it gets worse when decompressed:
People generally like small images e.g for faster CI builds (or just impatience!) My approach uses a second stage build that discards everything that isn't strictly needed for running ddisasm or the gtirb binaries.
Fair, I was thinking that people might want to have the ddisasm source and ability to easily rebuild, but maybe that's not the common case. I've updated grammatech/ddisasm with a lighter image (see below). If it becomes necessary we can upload an additional fuller image which permits an easy rebuild.
$ docker images grammatech/ddisasm
REPOSITORY TAG IMAGE ID CREATED SIZE
grammatech/ddisasm latest 2cbd5f1d799f 3 minutes ago 130MB
Many users, including me, have faced multiple frustrating issues while building the project: #26 #18 #25 #17 #10 #6
This dockerfile and its docker image at the following link alleviates the problem: https://hub.docker.com/r/jeshan/ddisasm
Let's discuss if such a contribution is welcome.