Sobes.tech
Junior

Ποιες οδηγίες χρησιμοποιούνται στο Dockerfile;

sobes.tech AI

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

FROM ορίζει την βασική εικόνα. RUN εκτελεί εντολές κατά τη διάρκεια της κατασκευής. CMD ορίζει την εντολή που θα εκτελεστεί κατά την εκκίνηση του κοντέινερ. ENTRYPOINT ορίζει το εκτελέσιμο αρχείο κατά την εκκίνηση του κοντέινερ. COPY αντιγράφει αρχεία από το host στην εικόνα. ADD αντιγράφει αρχεία από το host ή URL στην εικόνα και μπορεί να αποσυμπιέσει αρχεία. WORKDIR ορίζει τον εργασιακό κατάλογο. ENV ορίζει μεταβλητές περιβάλλοντος. ARG ορίζει μεταβλητές κατασκευής. VOLUME προσαρτά έναν όγκο. EXPOSE δηλώνει τις θύρες που ακούει το κοντέινερ. USER ορίζει τον χρήστη που θα εκτελεί εντολές. LABEL προσθέτει μεταδεδομένα στην εικόνα. HEALTHCHECK ελέγχει την υγεία του κοντέινερ. SHELL ορίζει το κέλυφος για τις εντολές RUN, CMD και ENTRYPOINT. STOPSIGNAL ορίζει το σήμα συστήματος που θα σταλεί στο κοντέινερ για τερματισμό. ONBUILD προσθέτει μια εντολή ενεργοποίησης που εκτελείται κατά τη χρήση της εικόνας ως βασική.

Παράδειγμα χρήσης:

# Χρησιμοποιούμε μια βασική εικόνα Ubuntu
FROM ubuntu:22.04

# Εγκαθιστούμε πακέτα
RUN apt-get update && \
    apt-get install -y nginx

# Αντιγράφουμε το αρχείο ρύθμισης Nginx
COPY nginx.conf /etc/nginx/nginx.conf

# Ανοίγουμε την πόρτα 80
EXPOSE 80

# Ξεκινάμε το Nginx κατά την εκκίνηση του κοντέινερ
CMD ["nginx", "-g", "daemon off;"]