summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSefa Eyeoglu <[email protected]>2023-01-16 12:41:37 +0100
committerseth <[email protected]>2023-01-16 18:49:02 +0000
commit1cf59b4b31c805d1e13c48e4add91f57deaa3a5f (patch)
treeb183a99cbaf974ec2785e6f114d84801e1ab414f
parent3d4ec9097ed83f2feb2f110f909c5db409800d3b (diff)
refactor: use multi-stage-builds
Also simplify the Dockerfile and add support for building using Podman. Signed-off-by: Sefa Eyeoglu <[email protected]>
-rw-r--r--Dockerfile21
1 files changed, 9 insertions, 12 deletions
diff --git a/Dockerfile b/Dockerfile
index 1109e93..ea356e0 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,24 +1,21 @@
-FROM golang:alpine3.17
+FROM docker.io/golang:alpine3.17 AS build
-WORKDIR /src
+RUN apk add --no-cache git=2.38.2-r0
-RUN apk update
-RUN apk add git
+RUN git clone https://github.com/packwiz/packwiz.git /build
-RUN git clone https://github.com/packwiz/packwiz.git ./
-
-# cache go modules
WORKDIR /build
-RUN mv /src/go.mod ./ && mv /src/go.sum ./
RUN go mod download
+RUN go build
+
+FROM docker.io/alpine:3.17
-# build packwiz
-RUN mv /src/* ./
-RUN go build -o /packwiz
+RUN mkdir /app
+COPY --from=build /build/packwiz /app/
WORKDIR /data
VOLUME /data
EXPOSE 8080
-CMD [ "/packwiz", "serve" ]
+CMD [ "/app/packwiz", "serve" ]