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, και στη συνέχεια δημιουργείται μια ελάχιστη εικόνα μόνο με το δυαδικό αρχείο για την εκτέλεση.