Mettre en conteneur
Go est célèbre pour produire un binaire statique unique. Cela rend les images Docker extrêmement petites.
Le Dockerfile multi-étapes (Multi-Stage) :
dockerfile
Étape de construction
FROM golang:1.21-alpine AS builder WORKDIR /app COPY . . RUN go build -o main .
Étape finale
FROM alpine:latest COPY --from=builder /app/main . CMD ["./main"]
Cela donne une image d'environ 15 Mo au lieu de 800 Mo !