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

  1. En la primera etapa (constructor), se usa una imagen oficial con el SDK de Go, donde se compila la aplicación.
  2. En la segunda etapa, se crea una imagen mínima (por ejemplo, basada en scratch o alpine), 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.