Sobes.tech
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:

  1. U prvom koraku (builder), koristi se zvanična slika sa Go SDK-jem, gde se aplikacija kompajlira.
  2. U drugom koraku, kreira se minimalna slika (npr. zasnovana na scratch ili alpine), 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.