-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
52 lines (43 loc) · 1.46 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
FROM ubuntu:16.04
#Installing mono
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
RUN echo "deb http://download.mono-project.com/repo/ubuntu stable-xenial main" | tee /etc/apt/sources.list.d/mono-official-stable.list
RUN apt-get update
RUN apt-get -y install mono-devel
#Installing Z3
RUN apt-get update \
&& apt-get install -y git \
&& apt-get install -y python \
&& apt-get install -y build-essential \
&& git clone https://github.com/Z3Prover/z3.git \
&& cd z3 \
&& python scripts/mk_make.py \
&& cd build \
&& make \
&& make install \
&& cd /
#Installing boogie
RUN git clone https://github.com/boogie-org/boogie.git \
&& cd boogie \
&& apt-get install -y wget \
&& wget https://dist.nuget.org/win-x86-commandline/latest/nuget.exe \
&& mono ./nuget.exe restore Source/Boogie.sln \
&& xbuild Source/Boogie.sln \
&& ln -s /usr/bin/z3 Binaries/z3.exe \
&& cd /
#testing it
#> docker run -it boogie
##### now inside the container
##> which z3
## /usr/bin/z3
##> echo "type t = [int]bool" > test.bpl
##> mono boogie/Binaries/Boogie.exe test.bpl
## Boogie program verifier version 2.3.0.61016, Copyright (c) 2003-2014, Microsoft.
## test.bpl(2,1): error: ";" expected
## 1 parse errors detected in test.bpl
#Installing java
RUN apt-get -y update && apt-get clean
RUN apt-get -y install default-jdk && apt-get clean
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
# COPY . /usr/src/app