Sobes.tech
Junior — Middle

Hogyan történik a Docker képek összeállítása Go nyelven írt alkalmazásokhoz?

sobes.tech MI

Válasz az MI-től

A Go alkalmazások Docker képeinek építéséhez általában több szakaszos építést (multi-stage build) használnak, hogy minimális és optimalizált képet kapjanak.

Fő lépések:

  1. Az első szakaszban (builder) egy hivatalos Go SDK képet használnak, ahol az alkalmazás fordítása történik.
  2. A második szakaszban egy minimális képet hoznak létre (például scratch vagy alpine alapú), ahová csak a fordított bináris kerül másolásra.

Dockerfile példa:

# Építési szakasz
FROM golang:1.20 AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp

# Minimális végső kép
FROM alpine:latest
RUN apk --no-cache add ca-certificates
COPY --from=builder /app/myapp /usr/local/bin/myapp
ENTRYPOINT ["/usr/local/bin/myapp"]

Ez a megközelítés csökkenti a végső kép méretét, és kizárja a szükségtelen eszközöket és forrásokat.