[klee-dev] Experimental official Docker image

Dan Liew dan at su-root.co.uk
Fri Apr 10 10:34:18 BST 2015


Hi All,

I've added a Docker file [1] to KLEE's git repo and linked it to our
official Docker repo [2].

I am aware that several others have built KLEE docker containers
already. This image is different in that it uses the Ubuntu's official
LLVM and clang packages (avoids building them in the container :D) and
also runs the tests in the container (i.e. the image will only be
successfully built if all the tests pass)

The image will automatically be rebuilt every time new commits are
pushed to the master branch.

The image is built on top of Ubuntu 14.04LTS and uses LLVM 3.4.

Right now you can try this out by running

$ docker pull klee/klee
$ docker run -ti klee/klee

This will drop you into a shell as the "klee" user. You have sudo
access (the password is "klee") so you can install extra packages if
you need them.

Ideally I'd like to get feedback on a few things before I add
instructions on using the Docker container to KLEE's documentation

* Is the image too large? If all the image is for is trying out KLEE
(and not developing it) then we could shrink the image by installing
KLEE and removing all the source and build files. The expanded size of
the image 1.143GB but the download size may be smaller (I know docker
compresses using xz on a push but I don't know about pull). We could
also make an effort in the Dockerfile to do more things in a single
step to reduce the number of layers in the final image.

* Does the image ship with everything needed to try out KLEE?

* Do we need an image that uses LLVM2.9? I'm really not keen on this,
getting the image to build using Ubuntu's LLVM 3.4 packages was hard
enough!

[1] https://github.com/klee/klee/blob/master/Dockerfile
[2] https://registry.hub.docker.com/u/klee/klee/

Thanks,
Dan.



More information about the klee-dev mailing list