Sobes.tech
Junior — Middle

Come si può costruire e preparare un contenitore con l'applicazione utilizzando Docker?

sobes.tech AI

Risposta dell'AI

Per costruire e preparare un contenitore con un'applicazione in Go usando Docker, si crea generalmente un Dockerfile che descrive le fasi di build e di esecuzione dell'applicazione. Spesso si utilizza una build multi-stage per ridurre la dimensione dell'immagine finale.

Esempio di Dockerfile per un'app Go:

# Fase di build
FROM golang:1.20-alpine AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp

# Fase di esecuzione
FROM alpine:latest
WORKDIR /app
COPY --from=builder /app/myapp .
CMD ["./myapp"]

Comandi per buildare e avviare:

docker build -t my-go-app .
docker run -p 8080:8080 my-go-app

In questo modo, prima si compila l'applicazione in un'immagine con Go, poi si crea un'immagine minima con solo il binario per l'esecuzione.