uni-due-syssec/efcf-framework

Docker Issues

Closed this issue · 4 comments

melvn commented

I have been attempting to run this framework on a fresh install of Ubuntu but am persistently arriving at the issue of docker: manifest unknown and therefore docker not being able to build the image. Below is a screenshot from my terminal:

image (1)

I have tried various solutions such as using different tags, from jammy to latest to sha, also upgrading my docker version and ensuring all my packages are up to date, also running command with sudo permissions and yet always producing the same output, manifest unknown. I tried to avoid this issue using the make container-enter command but this also failed with: ERROR: failed to solve: executor failed running [/bin/sh -c make clean; make source-only && make install && afl-clang-lto --version >/dev/null]: exit code: 2 make: *** [container.Makefile:68: /home/mlvn/Desktop/efcf-framework/docker//ubuntu.BUILT] Error 1

I believe at this stage their may be at issue with the docker package as this typically occurs when docker cannot find the specified image manifest and cannot create the image therefore, as i have tried on both clean fedora and ubuntu installs + fresh VM ubuntu and fedora runs yet the issues persist.

Any ideas how to fix? Thanks!

Additional Info:

Operating Systems Tried:

  • Ubuntu 18.04
  • Ubuntu 20.04
  • Fedora 38
  • Arch Linux 2023.04.01
melvn commented

Has been fixed, altered the order of commands. Thanks

f0rki commented

Cool. @melvn do you mind sharing what exactly was the issue?

melvn commented

Yeah sure, rather the running docker run command as ghcr.io/uni-due-syssec/efcf-framework:main which of course resulted in manifest unknown, I instead fed the readme.md into GPT-4 and was prompted to docker run as efcf:latest, and also run the container-build command prior to the docker command, these fixed the issue somehow and got it working. So i assume maybe the docker image may be incorrectly tagged? Not 100% sure.
Attached is the command that worked for me:
docker run --rm -it efcf:latest

Although @f0rki i do have one other issue that i think may need to be solved through a pull request, i believe the builder,py file in the launcher folder has an error message that the join() method is not defined for a list object. This means that the buildlog_mem object is not a list object. issue. Ive tried rewriting line 229 on my local repo to (buildlog_mem.decode("utf-8").splitlines()[-7:]).join("\n") but the traceback error persist. Any thoughts?
Screenshot from 2023-04-24 17-47-52

f0rki commented

Oh I thought I fixed those issues. Please try again with the latest version.