add docker build

This commit is contained in:
Dmitry Vasiliev 2020-05-17 16:47:53 +03:00
parent 560fc80eab
commit 80c9c02cd7
No known key found for this signature in database
GPG Key ID: C9A6FF8856B941E3
2 changed files with 42 additions and 0 deletions

22
.github/workflows/docker.yml vendored Normal file
View File

@ -0,0 +1,22 @@
name: Publish to Registry
on:
push:
branches:
- master
tags:
- v*
jobs:
push:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Get release version
id: get_version
run: echo ::set-env name=RELEASE_VERSION::$(echo ${GITHUB_REF:10})
- name: Publish to Registry
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: vadv/prometheus-exporter-merger
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
tags: "latest,${{ env.RELEASE_VERSION }}"

20
Dockerfile Normal file
View File

@ -0,0 +1,20 @@
FROM golang:1.14-alpine3.11 as builder
RUN apk add --no-cache git make gcc libc-dev
COPY go.mod .
COPY go.sum .
RUN go mod download
COPY . .
RUN go build --ldflags "-s -w -linkmode external -extldflags -static" --tags netcgo -o /prometheus-exporter-merger
FROM scratch
ENTRYPOINT ["/prometheus-exporter-merger"]
USER nobody
EXPOSE 8080
COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
COPY --from=builder /etc/passwd /etc/passwd
COPY --from=builder /prometheus-exporter-merger /prometheus-exporter-merger
ENTRYPOINT /prometheus-exporter-merger