Files
PdfEditor/backend/Dockerfile
2026-08-17 19:08:20 +02:00

30 lines
734 B
Docker

# syntax=docker/dockerfile:1
# ---- Étape de build ----
FROM golang:1.23-alpine AS build
WORKDIR /src
# Téléchargement des dépendances en couche séparée pour profiter du cache.
COPY go.mod go.sum ./
RUN go mod download
# Copie du code source et compilation d'un binaire statique.
COPY . .
RUN CGO_ENABLED=0 GOOS=linux go build -trimpath -ldflags="-s -w" -o /out/server ./cmd/server
# ---- Image finale (distroless, légère) ----
FROM gcr.io/distroless/static-debian12:nonroot
# Copie du binaire statique.
COPY --from=build /out/server /server
# Le dossier de stockage est monté via un volume (cf. docker-compose).
ENV STORAGE_PATH=/data/documents
ENV PORT=8080
EXPOSE 8080
USER nonroot:nonroot
ENTRYPOINT ["/server"]