1
0
mirror of https://github.com/StackExchange/dnscontrol.git synced 2024-05-11 05:55:12 +00:00
F.D.Castel ffcc77a40a New Dockerfile (fix #1459) (#1537)
* New Dockerfile from https://github.com/jauderho/dockerfiles/blob/main/dnscontrol/Dockerfile .

* Dockerfile: Removes convertzone. Restores ENTRYPOINT.

* Dockerfile: Adds BUILD_VERSION variable.

* Dockerfile: Pin docker images to specific versions.
2022-06-15 16:17:44 -04:00

31 lines
778 B
Docker

FROM golang:1.18.3-alpine3.16@sha256:7cc62574fcf9c5fb87ad42a9789d5539a6a085971d58ee75dd2ee146cb8a8695 AS build
WORKDIR /go/src/github.com/StackExchange/dnscontrol
ARG BUILD_VERSION
ENV GO111MODULE on
COPY . .
# build dnscontrol
RUN apk update \
&& apk add --no-cache ca-certificates curl gcc build-base git \
&& update-ca-certificates \
&& go build -v -trimpath -buildmode=pie -ldflags="-s -w -X main.SHA=${BUILD_VERSION}"
# Validation check
RUN cp dnscontrol /go/bin/dnscontrol
RUN dnscontrol version
# -----
FROM alpine:3.16.0@sha256:686d8c9dfa6f3ccfc8230bc3178d23f84eeaf7e457f36f271ab1acc53015037c
COPY --from=build /etc/ssl/certs /etc/ssl/certs
COPY --from=build /go/bin/dnscontrol /usr/local/bin
WORKDIR /dns
ENTRYPOINT ["/usr/local/bin/dnscontrol"]