Hermes/backend.Dockerfile

23 lines
513 B
Docker

FROM golang:1.22-alpine AS builder
WORKDIR /build
COPY go.mod go.sum ./
RUN go mod download && go mod verify
COPY cmd/backend cmd/backend
COPY pkg pkg
COPY internal internal
RUN GOEXPERIMENT=boringcrypto go build -ldflags "-s -w" -o ./app ./cmd/backend
RUN chmod +x ./app
FROM alpine:3.21.2 AS production
WORKDIR /backend
COPY --from=builder /build/app .
COPY deploy/backend-config.yaml ./config.yaml
COPY deploy/backend-jwt-privkey ./privkey
EXPOSE 8080
CMD ["./app", "-c", "config.yaml", "-k", "privkey"]