Sobes.tech
Junior — Middle

Πώς μπορεί να γίνει η κατασκευή και η προετοιμασία ενός κοντέινερ με την εφαρμογή χρησιμοποιώντας Docker;

sobes.tech AI

Απάντηση από AI

Για να δημιουργήσετε και να προετοιμάσετε ένα κοντέινερ με μια εφαρμογή Go χρησιμοποιώντας Docker, συνήθως δημιουργείτε ένα Dockerfile που περιγράφει τα στάδια κατασκευής και εκτέλεσης της εφαρμογής. Συχνά χρησιμοποιείται μια πολύ-στάδια κατασκευή για να μειωθεί το μέγεθος της τελικής εικόνας.

Παράδειγμα Dockerfile για μια εφαρμογή Go:

# Στάδιο κατασκευής
FROM golang:1.20-alpine AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp

# Στάδιο εκτέλεσης
FROM alpine:latest
WORKDIR /app
COPY --from=builder /app/myapp .
CMD ["./myapp"]

Εντολές για κατασκευή και εκτέλεση:

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

Έτσι, αρχικά γίνεται η μεταγλώττιση της εφαρμογής σε μια εικόνα με Go, και στη συνέχεια δημιουργείται μια ελάχιστη εικόνα μόνο με το δυαδικό αρχείο για την εκτέλεση.