docker-coredns/Dockerfile

44 行
1.1 KiB
Docker

FROM docker.io/alpine:3.8
LABEL maintainer="Jan Christian Grünhage <jan.christian@gruenhage.xyz"
ARG COREDNS_VERSION=1.2.2
ENV UID=1337 \
GID=1337
RUN apk add --no-cache \
s6 \
su-exec \
unbound-libs \
ca-certificates \
libcap \
bind-tools \
&& apk add --no-cache \
-t .build-deps \
unbound-dev \
build-base \
go \
tar \
coreutils \
git \
&& export GOPATH=/tmp/gopath \
&& mkdir -p ${GOPATH}/src/github.com/coredns \
&& cd ${GOPATH}/src/github.com/coredns \
&& wget https://github.com/coredns/coredns/archive/v${COREDNS_VERSION}.tar.gz \
&& tar xf v${COREDNS_VERSION}.tar.gz \
&& mv coredns-${COREDNS_VERSION} coredns \
&& cd coredns \
&& echo "unbound:github.com/coredns/unbound" >> plugin.cfg \
&& go get -d github.com/coredns/unbound \
&& make CHECKS= godeps gen \
&& go build \
&& install -o root -g root -m +x ./coredns /usr/local/bin/coredns \
&& setcap cap_net_bind_service=+ep /usr/local/bin/coredns \
&& cd / \
&& apk del .build-deps \
&& rm -rf /tmp/gopath /root/.cache/go-build
COPY docker/root /
CMD ["/bin/s6-svscan", "/etc/s6.d"]