FROM golang:1.14-alpine as builder ARG REVISION RUN mkdir -p /podinfo/ WORKDIR /podinfo COPY . . RUN go mod download RUN CGO_ENABLED=0 go build -ldflags "-s -w \ -X github.com/stefanprodan/podinfo/pkg/version.REVISION=${REVISION}" \ -a -o bin/podinfo cmd/podinfo/* RUN CGO_ENABLED=0 go build -ldflags "-s -w \ -X github.com/stefanprodan/podinfo/pkg/version.REVISION=${REVISION}" \ -a -o bin/podcli cmd/podcli/* FROM alpine:3.11 ARG BUILD_DATE ARG VERSION ARG REVISION LABEL maintainer="stefanprodan" \ org.opencontainers.image.created=$BUILD_DATE \ org.opencontainers.image.url="https://github.com/stefanprodan/podinfo" \ org.opencontainers.image.source="https://github.com/stefanprodan/podinfo" \ org.opencontainers.image.version=$VERSION \ org.opencontainers.image.revision=$REVISION \ org.opencontainers.image.vendor="stefanprodan" \ org.opencontainers.image.title="podinfo" \ org.opencontainers.image.description="Go microservice template for Kubernetes" \ org.opencontainers.image.licenses="MIT" RUN addgroup -S app \ && adduser -S -g app app \ && apk --no-cache add \ curl openssl netcat-openbsd WORKDIR /home/app COPY --from=builder /podinfo/bin/podinfo . COPY --from=builder /podinfo/bin/podcli /usr/local/bin/podcli COPY ./ui ./ui RUN chown -R app:app ./ USER app CMD ["./podinfo"]