From 9da8289ef8f230c4607a56760676f03d41a040fc Mon Sep 17 00:00:00 2001 From: soulteary Date: Sat, 1 Jan 2022 23:54:14 +0800 Subject: [PATCH] feat: add dockerfile for debian, alpine --- .dockerignore | 2 ++ Dockerfile | 10 ++++++++++ Dockerfile.alpine | 10 ++++++++++ Makefile | 5 +++++ 4 files changed, 27 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100644 Dockerfile.alpine diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..0db9f80 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +Dockerfile +Dockerfile.* \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..61f3625 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,10 @@ +FROM golang:1.17.5-stretch AS Builder +WORKDIR /app +COPY . . +RUN go mod download -x +RUN GOOS=linux GOARCH=amd64 go build -o webhook + +FROM debian:stretch +LABEL maintainer "soulteary " +COPY --from=builder /app/webhook /bin/ +CMD webhook \ No newline at end of file diff --git a/Dockerfile.alpine b/Dockerfile.alpine new file mode 100644 index 0000000..4c92c72 --- /dev/null +++ b/Dockerfile.alpine @@ -0,0 +1,10 @@ +FROM golang:1.17.5-alpine3.15 AS Builder +WORKDIR /app +COPY . . +RUN go mod download -x +RUN GOOS=linux GOARCH=amd64 go build -o webhook + +FROM alpine:3.15 +LABEL maintainer "soulteary " +COPY --from=builder /app/webhook /bin/ +CMD webhook \ No newline at end of file diff --git a/Makefile b/Makefile index 1a06482..6d65f04 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,6 @@ OS = darwin freebsd linux openbsd ARCHS = 386 arm amd64 arm64 +DOCKER_REPO_NAME=adnanh/webhook .DEFAULT_GOAL := help @@ -33,6 +34,10 @@ release-windows: clean deps ## Generate release for windows tar cz -C build -f build/webhook-windows-$$arch.tar.gz webhook-windows-$$arch; \ done +release-docker: + docker build -t "${DOCKER_REPO_NAME}" -f Dockerfile . + docker build -t "${DOCKER_REPO_NAME}:alpine" -f Dockerfile.alpine . + test: deps ## Execute tests go test ./...