From 46ca89d186871dd5d3e31433bc0997e0cbb61d0f Mon Sep 17 00:00:00 2001 From: Devan Carpenter Date: Sun, 23 Dec 2018 03:45:56 -0600 Subject: contrib: Move Dockerfile to appropriate dir Dockerfile was moved into the root directory incorrectly. This commit moves it into the "docker" directory, alongside its associated assets. --- contrib/docker/Dockerfile | 102 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 contrib/docker/Dockerfile (limited to 'contrib/docker') diff --git a/contrib/docker/Dockerfile b/contrib/docker/Dockerfile new file mode 100644 index 000000000..4fdd91f60 --- /dev/null +++ b/contrib/docker/Dockerfile @@ -0,0 +1,102 @@ +FROM ubuntu:18.04 + +ENV DEBIAN_FRONTEND noninteractive + +# Install tools and dependencies +RUN apt-get update && \ + apt-get -y install --no-install-recommends \ + ca-certificates \ + libsasl2-modules \ + git \ + automake \ + autopoint \ + autoconf \ + texinfo \ + libtool \ + libltdl-dev \ + libgpg-error-dev \ + libidn11-dev \ + libunistring-dev \ + libglpk-dev \ + libbluetooth-dev \ + libextractor-dev \ + libmicrohttpd-dev \ + libgnutls28-dev \ + libgcrypt20-dev \ + libpq-dev \ + libsqlite3-dev && \ + apt-get clean all && \ + apt-get -y autoremove && \ + rm -rf \ + /var/lib/apt/lists/* \ + /tmp/* + +# Install GNUrl +ENV GNURL_GIT_URL https://git.taler.net/gnurl.git +ENV GNURL_GIT_BRANCH gnurl-7.57.0 + +RUN git clone $GNURL_GIT_URL \ + --branch $GNURL_GIT_BRANCH \ + --depth=1 \ + --quiet && \ + cd /gnurl && \ + autoreconf -i && \ + ./configure \ + --enable-ipv6 \ + --with-gnutls \ + --without-libssh2 \ + --without-libmetalink \ + --without-winidn \ + --without-librtmp \ + --without-nghttp2 \ + --without-nss \ + --without-cyassl \ + --without-polarssl \ + --without-ssl \ + --without-winssl \ + --without-darwinssl \ + --disable-sspi \ + --disable-ntlm-wb \ + --disable-ldap \ + --disable-rtsp \ + --disable-dict \ + --disable-telnet \ + --disable-tftp \ + --disable-pop3 \ + --disable-imap \ + --disable-smtp \ + --disable-gopher \ + --disable-file \ + --disable-ftp \ + --disable-smb && \ + make install && \ + cd - && \ + rm -fr /gnurl + +# Install GNUnet +ENV GNUNET_PREFIX /usr/local/gnunet +ENV CFLAGS '-g -Wall -O0' + +COPY . /gnunet + +RUN cd /gnunet && \ + ./bootstrap && \ + ./configure \ + --with-nssdir=/lib \ + --prefix="$GNUNET_PREFIX" \ + --enable-logging=verbose && \ + make -j3 && \ + make install && \ + ldconfig && \ + cd - && \ + rm -fr /gnunet + +# Configure GNUnet +COPY docker/gnunet.conf /etc/gnunet.conf +COPY docker/docker-entrypoint.sh /usr/local/bin/docker-entrypoint +RUN chmod 755 /usr/local/bin/docker-entrypoint + +ENV LOCAL_PORT_RANGE='40001 40200' +ENV PATH "$GNUNET_PREFIX/bin:/usr/local/bin:$PATH" + +ENTRYPOINT ["docker-entrypoint"] -- cgit v1.2.3