Junior — Middle
Kako se vrši sastavljanje Docker slika za aplikacije napisane na Go?
sobes.tech АИ
Одговор од АИ
Za izgradnju Docker slika Go aplikacija obično se koristi višestepena izgradnja (multi-stage build) kako bi se dobila minimalna i optimizovana slika.
Glavni koraci:
- U prvom koraku (builder), koristi se zvanična slika sa Go SDK-jem, gde se aplikacija kompajlira.
- U drugom koraku, kreira se minimalna slika (npr. zasnovana na
scratchilialpine), u koju se kopira samo kompajlirani binarni fajl.
Primer Dockerfile:
# Faza izgradnje
FROM golang:1.20 AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp
# Minimalna završna slika
FROM alpine:latest
RUN apk --no-cache add ca-certificates
COPY --from=builder /app/myapp /usr/local/bin/myapp
ENTRYPOINT ["/usr/local/bin/myapp"]
Ovaj pristup smanjuje veličinu završnog slike i isključuje nepotrebne alate i izvore.