diff options
Diffstat (limited to 'contrib/ci/docker/Dockerfile')
-rw-r--r-- | contrib/ci/docker/Dockerfile | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/contrib/ci/docker/Dockerfile b/contrib/ci/docker/Dockerfile new file mode 100644 index 000000000..974e41a5e --- /dev/null +++ b/contrib/ci/docker/Dockerfile | |||
@@ -0,0 +1,57 @@ | |||
1 | from fedora:26 | ||
2 | |||
3 | # Install the required build tools | ||
4 | RUN dnf -y update && dnf -y install which git automake texinfo gettext-devel autoconf libtool libtool-ltdl-devel libidn-devel libunistring-devel glpk libextractor-devel libmicrohttpd-devel gnutls libgcrypt-devel jansson-devel sqlite-devel npm | ||
5 | |||
6 | WORKDIR /usr/src | ||
7 | |||
8 | # Install gnurl | ||
9 | RUN wget https://ftp.gnu.org/gnu/gnunet/gnurl-7.59.0.tar.gz | ||
10 | RUN tar xvzpf gnurl-7.59.0.tar.gz | ||
11 | WORKDIR /usr/src/gnurl-7.59.0 | ||
12 | RUN autoreconf -i | ||
13 | RUN ./configure --disable-ntlm-wb | ||
14 | RUN make install | ||
15 | WORKDIR /usr/src | ||
16 | |||
17 | RUN dnf -y install wget flex bison | ||
18 | |||
19 | # Install libpbc | ||
20 | RUN wget https://crypto.stanford.edu/pbc/files/pbc-0.5.14.tar.gz | ||
21 | RUN tar xvzpf pbc-0.5.14.tar.gz | ||
22 | WORKDIR /usr/src/pbc-0.5.14 | ||
23 | RUN ./configure --prefix=/usr | ||
24 | RUN make install | ||
25 | WORKDIR /usr/src | ||
26 | |||
27 | RUN dnf -y install glib2-devel | ||
28 | |||
29 | # Install libbswabe | ||
30 | RUN git clone https://github.com/schanzen/libgabe.git | ||
31 | WORKDIR /usr/src/libgabe | ||
32 | RUN ./configure --prefix=/usr | ||
33 | RUN make install | ||
34 | |||
35 | # Install WebUI | ||
36 | WORKDIR /usr/src/ | ||
37 | RUN git clone https://github.com/schanzen/gnunet-webui.git | ||
38 | WORKDIR /usr/src/gnunet-webui | ||
39 | RUN git checkout gnuidentity | ||
40 | |||
41 | RUN mkdir /usr/src/gnunet | ||
42 | WORKDIR /usr/src/gnunet | ||
43 | ADD . . | ||
44 | ARG NUM_JOBS | ||
45 | RUN ./bootstrap | ||
46 | RUN ./configure --prefix=/usr/local | ||
47 | RUN make -j$NUM_JOBS | ||
48 | RUN make install | ||
49 | |||
50 | RUN groupadd gnunetdns | ||
51 | RUN adduser -S -m -h /var/lib/gnunet gnunet | ||
52 | RUN chown gnunet:gnunet /var/lib/gnunet | ||
53 | RUN echo '[arm]\nSYSTEM_ONLY = YES\nUSER_ONLY = NO\n' > /etc/gnunet.conf | ||
54 | |||
55 | ADD docker-entrypoint.sh . | ||
56 | |||
57 | CMD ["sh", "docker-entrypoint.sh"] | ||