From a1e44e09247682391cffdb4b21cdab3fd0ee56ad Mon Sep 17 00:00:00 2001 From: Marcus Noble Date: Sat, 25 Apr 2020 18:43:17 +0100 Subject: [PATCH] Added dockerfile --- .dockerignore | 1 + Dockerfile | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/.dockerignore b/.dockerignore index aa2f1cc..3f0e80a 100644 --- a/.dockerignore +++ b/.dockerignore @@ -16,3 +16,4 @@ lerna-debug.log* .vscode *.code-workspace .history/ +Dockerfile diff --git a/Dockerfile b/Dockerfile index e69de29..c427c9d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -0,0 +1,18 @@ +FROM golang:1.14-alpine AS builder +RUN apk update && apk add --no-cache git curl && adduser -D -g '' gopher && apk add -U --no-cache ca-certificates +RUN curl -o op.zip https://cache.agilebits.com/dist/1P/op/pkg/v0.10.0/op_linux_386_v0.10.0.zip +RUN unzip op.zip && mv ./op /usr/local/bin && chmod +x /usr/local/bin/op +WORKDIR /app/ +ADD go.mod go.sum ./ +RUN go mod download +ADD . . +RUN GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -ldflags="-w -s" -o kube-1password-secrets main.go + +FROM golang:1.14-alpine +WORKDIR /app/ +COPY --from=builder /usr/local/bin/op /usr/local/bin/op +COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ +COPY --from=builder /etc/passwd /etc/passwd +COPY --from=builder /app/kube-1password-secrets /app/kube-1password-secrets +RUN mkdir -p /root/.op && chmod 700 /root/.op +ENTRYPOINT ["/app/kube-1password-secrets"]