]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
docker: updated Dockerfile
authorMarek Vavruša <marek.vavrusa@nic.cz>
Tue, 3 Feb 2015 19:42:11 +0000 (20:42 +0100)
committerMarek Vavruša <marek.vavrusa@nic.cz>
Tue, 3 Feb 2015 19:43:43 +0000 (20:43 +0100)
scripts/Dockerfile

index 3146881a4524033c38fa2f057e207db5e3215069..1f8888054a6b7519794823880e1bb0eaf01a9e12 100644 (file)
@@ -1,27 +1,41 @@
-FROM cznic/knot:latest
+FROM cznic/knot:resolver-compat
 MAINTAINER Marek Vavrusa <marek.vavrusa@nic.cz>
 
-# Install libuv
-RUN mkdir /src; \
-git clone https://github.com/libuv/libuv.git /src/libuv; \
-cd /src/libuv; \
-sh autogen.sh && ./configure && make && make install && ldconfig; \
-rm -rf /src/libuv
+# Environment
+ENV THREADS 4
+ENV BUILD_PKGS git-core make gcc libtool autoconf pkg-config liblmdb-dev libcmocka-dev libssl-dev
 
-# Install knot-resolver
-RUN apt-get -q -y update; \
-apt-get install -q -y \
-libcmocka-dev; \
-git clone https://gitlab.labs.nic.cz/knot/resolver.git /src/knot-resolver; \
-cd /src/knot-resolver; \
-autoreconf -if && ./configure && make && make check && make install && ldconfig && \
-# Trim down the image
-apt-get clean && \
-rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /src/knot-resolver
+# Expose port
+EXPOSE 53
 
 # Select entrypoint
 WORKDIR /root
 CMD ["/usr/local/sbin/kresolved", "-a", "0.0.0.0#53"]
 
-# Expose port
-EXPOSE 53
+# Install dependencies and sources
+RUN apt-get -q -y update && \
+apt-get install -q -y ${BUILD_PKGS} && \
+# Install libuv
+git clone https://github.com/libuv/libuv.git /libuv-src && \
+cd /libuv-src && \
+sh autogen.sh && \
+./configure && \
+make -j${THREADS} && \
+make install && \
+ldconfig && \
+# Install knot-resolver
+git clone https://gitlab.labs.nic.cz/knot/resolver.git /resolver-src && \
+cd /resolver-src && \ 
+sh ./bootstrap && \
+./configure && \
+make -j${THREADS} && \
+make check && \
+make install && \
+ldconfig && \
+# Trim down the image
+rm -rf /libuv-src && \
+rm -rf /resolver-src && \
+apt-get purge -q -y ${BUILD_PKGS} && \
+apt-get autoremove -q -y && \
+apt-get clean && \
+rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*