Junior — Middle
Πώς μπορεί να μεταδοθούν μεταβλητές που αλλάζουν κατά τη διάρκεια της κατασκευής μιας εικόνας Docker;
sobes.tech AI
Απάντηση από AI
Οι μεταβλητές που αλλάζουν κατά τη διάρκεια της κατασκευής μιας εικόνας Docker μπορούν να μεταδοθούν μέσω επιχειρημάτων κατασκευής (ARG). Στο Dockerfile, δηλώνεται ένα επιχείρημα με την εντολή ARG, και κατά την κατασκευή με την εντολή docker build, περνάνε οι τιμές χρησιμοποιώντας τη σημαία --build-arg.
Παράδειγμα:
FROM alpine
ARG APP_VERSION
RUN echo "Έκδοση εφαρμογής: $APP_VERSION"
Κατασκευή με επιχείρημα:
docker build --build-arg APP_VERSION=1.2.3 -t myapp:1.2.3 .
Σημαντικό: Το ARG είναι διαθέσιμο μόνο κατά τη διάρκεια της κατασκευής και δεν αποθηκεύεται στην τελική εικόνα ως μεταβλητή περιβάλλοντος. Αν θέλετε η μεταβλητή να είναι διαθέσιμη στο κοντέινερ, χρησιμοποιήστε το ENV ή περάστε το μέσω μεταβλητών περιβάλλοντος κατά την εκκίνηση του κοντέινερ.