aboutsummaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorTristan Schwieren <tristan.schwieren@tum.de>2022-11-03 17:10:40 +0100
committerTristan Schwieren <tristan.schwieren@tum.de>2022-11-03 17:10:40 +0100
commit35a4a8be19615516ebf1b45837867cda1a90303f (patch)
tree15889dfdde3bbb34977247196fa7c400c6dce2ba /contrib
parentd0bb2253612f7272bb3b430b070847bafca8c297 (diff)
downloadgnunet-35a4a8be19615516ebf1b45837867cda1a90303f.tar.gz
gnunet-35a4a8be19615516ebf1b45837867cda1a90303f.zip
- fixing Dockerfile
Diffstat (limited to 'contrib')
-rw-r--r--contrib/docker/Dockerfile105
-rw-r--r--contrib/docker/README.md5
2 files changed, 53 insertions, 57 deletions
diff --git a/contrib/docker/Dockerfile b/contrib/docker/Dockerfile
index adcd7132c..55f86149a 100644
--- a/contrib/docker/Dockerfile
+++ b/contrib/docker/Dockerfile
@@ -1,16 +1,27 @@
1FROM ubuntu:18.04 1FROM ubuntu:20.04
2 2
3ENV DEBIAN_FRONTEND noninteractive 3ENV DEBIAN_FRONTEND noninteractive
4 4
5# Install tools and dependencies 5# Install tools and dependencies
6RUN apt-get update && \ 6RUN apt-get update
7 apt-get -y install --no-install-recommends \ 7RUN apt-get upgrade
8RUN apt-get -y install --no-install-recommends \
8 ca-certificates \ 9 ca-certificates \
9 libsasl2-modules \ 10 libsasl2-modules \
10 git \ 11 git \
11 automake \ 12 automake \
12 autopoint \ 13 autopoint \
13 autoconf \ 14 autoconf \
15 recutils \
16 make \
17 libssl-dev \
18 ninja-build \
19 meson \
20 curl \
21 libcurl4-gnutls-dev \
22 libsodium-dev \
23 libsodium23 \
24 libjansson-dev \
14 texinfo \ 25 texinfo \
15 libtool \ 26 libtool \
16 libltdl-dev \ 27 libltdl-dev \
@@ -25,70 +36,54 @@ RUN apt-get update && \
25 libgcrypt20-dev \ 36 libgcrypt20-dev \
26 libpq-dev \ 37 libpq-dev \
27 libsqlite3-dev \ 38 libsqlite3-dev \
28 wget && \ 39 wget
29 apt-get clean all && \ 40RUN apt-get clean all && \
30 apt-get -y autoremove && \ 41 apt-get -y autoremove && \
31 rm -rf \ 42 rm -rf \
32 /var/lib/apt/lists/* \ 43 /var/lib/apt/lists/* \
33 /tmp/* 44 /tmp/*
34 45
35# Install GNUrl 46# Install jose
36ENV GNURL_VERSION=7.57.0 47RUN wget -O /tmp/jose.tar.gz https://github.com/latchset/jose/archive/refs/tags/v11.tar.gz
37
38RUN wget -O /tmp/gnurl.tar.xz https://ftpmirror.gnu.org/gnu/gnunet/gnurl-${GNURL_VERSION}.tar.xz
39RUN cd /tmp && \ 48RUN cd /tmp && \
40 tar xvf gnurl.tar.xz && \ 49 tar xvf jose.tar.gz && \
41 cd gnurl-${GNURL_VERSION} && \ 50 cd jose-11 && \
42 autoreconf -i && \ 51 mkdir build && \
43 ./configure \ 52 cd build && \
44 --enable-ipv6 \ 53 meson .. --prefix=/usr && \
45 --with-gnutls \ 54 ninja && \
46 --without-libssh2 \ 55 ninja install && \
47 --without-libmetalink \ 56 cd / && \
48 --without-winidn \ 57 rm -rf /tmp/jose-11/*
49 --without-librtmp \
50 --without-nghttp2 \
51 --without-nss \
52 --without-cyassl \
53 --without-polarssl \
54 --without-ssl \
55 --without-winssl \
56 --without-darwinssl \
57 --disable-sspi \
58 --disable-ntlm-wb \
59 --disable-ldap \
60 --disable-rtsp \
61 --disable-dict \
62 --disable-telnet \
63 --disable-tftp \
64 --disable-pop3 \
65 --disable-imap \
66 --disable-smtp \
67 --disable-gopher \
68 --disable-file \
69 --disable-ftp \
70 --disable-smb && \
71 make install && \
72 cd - && \
73 rm -rf /tmp/gnurl*
74 58
75# Install GNUnet 59# Install GNUnet
76ENV GNUNET_PREFIX /usr/local/gnunet 60ENV GNUNET_PREFIX=/usr/local/lib
77ENV CFLAGS '-g -Wall -O0' 61ENV CFLAGS '-g -Wall -O0'
78 62
79COPY . /gnunet 63COPY . /gnunet
64WORKDIR /gnunet
65RUN ./bootstrap --no-doc
66RUN ./configure \
67 --with-nssdir=/lib \
68 --prefix="$GNUNET_PREFIX/.." \
69 --enable-logging=verbose
70RUN make -j
71RUN make install
72RUN ldconfig
73WORKDIR /
74RUN rm -rf /gnunet
80 75
81RUN cd /gnunet && \ 76# RUN cd /gnunet && \
82 ./bootstrap && \ 77# ./bootstrap && \
83 ./configure \ 78# ./configure \
84 --with-nssdir=/lib \ 79# --with-nssdir=/lib \
85 --prefix="$GNUNET_PREFIX" \ 80# --prefix="$GNUNET_PREFIX" \
86 --enable-logging=verbose && \ 81# --enable-logging=verbose && \
87 make -j3 && \ 82# make -j && \
88 make install && \ 83# make install && \
89 ldconfig && \ 84# ldconfig && \
90 cd - && \ 85# cd - && \
91 rm -fr /gnunet 86# rm -fr /gnunet
92 87
93# Configure GNUnet 88# Configure GNUnet
94COPY ./contrib/docker/gnunet.conf /etc/gnunet.conf 89COPY ./contrib/docker/gnunet.conf /etc/gnunet.conf
diff --git a/contrib/docker/README.md b/contrib/docker/README.md
index ce05012fc..66ba45d26 100644
--- a/contrib/docker/README.md
+++ b/contrib/docker/README.md
@@ -10,13 +10,14 @@ This will take quite a while and will consume a bit of data.
10First you need to go to the root of this repo. 10First you need to go to the root of this repo.
11 11
12```bash 12```bash
13cd .. 13cd ../..
14``` 14```
15 15
16Now you can build the image. 16Now you can build the image.
17 17
18```bash 18```bash
19docker build -t gnunet . 19make clean
20docker build -f contrib/docker/Dockerfile -t gnunet .
20``` 21```
21 22
22## Start it from the newly created gnunet image 23## Start it from the newly created gnunet image