diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..f9aaebd --- /dev/null +++ b/.dockerignore @@ -0,0 +1,6 @@ +.gitignore +.idea +.mockery.yaml +config.env +gen-swag.sh +merch.sql diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..476aad8 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,21 @@ +FROM golang:1.26.1-alpine3.23 AS builder + +WORKDIR /app +COPY go.mod go.sum ./ +RUN go mod download +COPY . . +RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -trimpath -ldflags="-s -w" -o main "./cmd" + + +FROM alpine:3.23 + +RUN apk add --no-cache \ + tzdata \ + ca-certificates + +COPY --from=builder /app/main /usr/local/bin/app + + +RUN chmod +x /usr/local/bin/app + +ENTRYPOINT ["app"]