Junior — Middle
¿Cómo se realiza la construcción de imágenes Docker para aplicaciones escritas en Go?
sobes.tech AI
Respuesta de la IA
Para construir imágenes Docker de aplicaciones Go, generalmente se utiliza una construcción en múltiples etapas para obtener una imagen mínima y optimizada.
Pasos principales:
- En la primera etapa (constructor), se usa una imagen oficial con el SDK de Go, donde se compila la aplicación.
- En la segunda etapa, se crea una imagen mínima (por ejemplo, basada en
scratchoalpine), donde solo se copia el binario compilado.
Ejemplo de Dockerfile:
# Etapa de construcción
FROM golang:1.20 AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp
# Imagen final mínima
FROM alpine:latest
RUN apk --no-cache add ca-certificates
COPY --from=builder /app/myapp /usr/local/bin/myapp
ENTRYPOINT ["/usr/local/bin/myapp"]
Este enfoque reduce el tamaño de la imagen final y elimina herramientas y fuentes innecesarias.