Στο σεμινάριό μας για το Docker, σας παρουσιάζουμε την πλατφόρμα εικονικοποίησης Docker και σας δείχνουμε πώς να χρησιμοποιήσετε το Docker στο σύστημα Ubuntu 22.04 σας, ακολουθώντας απλές οδηγίες.

Δομή και χαρακτηριστικά του Docker

«Δημιουργήστε, διανείμετε και εκτελέστε οποιαδήποτε εφαρμογή, οπουδήποτε» – αυτό είναι το σύνθημα της Docker. Η πλατφόρμα κοντέινερ ανοιχτού κώδικα προσφέρει μια ευέλικτη εναλλακτική λύση που απαιτεί ελάχιστους πόρους για την προσομοίωση στοιχείων υλικού με βάση εικονικές μηχανές (VM).

Ενώ η παραδοσιακή εικονικοποίηση υλικού βασίζεται στην εκκίνηση πολλαπλών συστημάτων-επισκεπτών σε ένα κοινό σύστημα-κεντρικό, οι εφαρμογές Docker εκτελούνται ως απομονωμένες διεργασίες στο ίδιο σύστημα με τη βοήθεια κοντέινερ. Αυτό ονομάζεται εικονικοποίηση βάσει κοντέινερ, γνωστή και ως εικονικοποίηση σε επίπεδο λειτουργικού συστήματος.

Image: Virtual machines and software containers in comparison
While each virtual machine launches its own operating system, Docker containers share the core of the host system

Ένα σημαντικό πλεονέκτημα της εικονικοποίησης με βάση τα κοντέινερ είναι ότι εφαρμογές με διαφορετικές απαιτήσεις μπορούν να εκτελούνται ανεξάρτητα η μία από την άλλη, χωρίς να απαιτείται ο επιπλέον φόρτος ενός ξεχωριστού συστήματος-επισκέπτη. Επιπλέον, με τα κοντέινερ, οι εφαρμογές μπορούν να αναπτυχθούν σε διάφορες πλατφόρμες και σε διαφορετικές υποδομές, χωρίς να χρειάζεται να προσαρμοστούν στις διαμορφώσεις υλικού ή λογισμικού του συστήματος-υποδοχής.

Το Docker είναι το πιο δημοφιλές λογισμικό που παρέχει στους χρήστες τεχνολογία εικονικοποίησης βασισμένη σε κοντέινερ. Η πλατφόρμα ανοιχτού κώδικα βασίζεται σε τρία βασικά στοιχεία. Για την εκτέλεση κοντέινερ, οι χρήστες χρειάζονται μόνο τον κινητήρα Docker καθώς και ειδικές εικόνες Docker, τις οποίες μπορούν να προμηθευτούν μέσω του Docker Hub ή να δημιουργήσουν οι ίδιοι.

Εικόνες Docker

Όπως και οι εικονικές μηχανές, τα κοντέινερ Docker βασίζονται σε εικόνες Docker. Μια εικόνα είναι ένα πρότυπο μόνο για ανάγνωση που περιέχει όλες τις οδηγίες που χρειάζεται ο κινητήρας Docker για να δημιουργήσει ένα κοντέινερ. Μια εικόνα Docker περιγράφεται ως μια φορητή εικόνα ενός κοντέινερ με τη μορφή αρχείου κειμένου, που ονομάζεται επίσης Dockerfile. Αν πρόκειται να εκκινηθεί ένα κοντέινερ σε ένα σύστημα, τότε πρώτα φορτώνεται ένα πακέτο με την αντίστοιχη εικόνα, εφόσον αυτή δεν υπάρχει τοπικά. Η εικόνα που φορτώνεται παρέχει το απαραίτητο σύστημα αρχείων, συμπεριλαμβανομένων όλων των παραμέτρων για το περιβάλλον εκτέλεσης. Ένα κοντέινερ μπορεί να θεωρηθεί ως μια διαδικασία που εκτελείται από μια εικόνα.

Το Docker Hub

Το Docker Hub είναι ένα μητρώο αποθετηρίων λογισμικού που βασίζεται στο cloud, ένα είδος βιβλιοθήκης για εικόνες Docker. Η διαδικτυακή υπηρεσία χωρίζεται σε δημόσιο και ιδιωτικό τμήμα. Το δημόσιο τμήμα προσφέρει στους χρήστες τη δυνατότητα να ανεβάζουν εικόνες που έχουν αναπτύξει οι ίδιοι και να τις μοιράζονται με την κοινότητα. Εδώ, υπάρχουν πολλές επίσημες εικόνες που διατίθενται από την ομάδα προγραμματιστών του Docker και από καθιερωμένα έργα ανοιχτού κώδικα. Οι εικόνες που ανεβάζονται στον ιδιωτικό τομέα του μητρώου δεν είναι προσβάσιμες στο κοινό και έτσι μπορούν να μοιραστούν, για παράδειγμα, εντός του εσωτερικού κύκλου μιας εταιρείας ή με φίλους ή γνωστούς. Μπορείτε να αποκτήσετε πρόσβαση στο Docker Hub στη διεύθυνση hub.docker.com.

Ο κινητήρας Docker

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

Η βασική αρχιτεκτονική του κινητήρα Docker χωρίζεται σε τρία στοιχεία: ένα δαίμονα με λειτουργίες διακομιστή, μια διεπαφή προγραμματισμού (API) βασισμένη στο πρότυπο προγραμματισμού REST (Representational State Transfer) και το τερματικό του λειτουργικού συστήματος (διεπαφή γραμμής εντολών, CLI) ως διεπαφή χρήστη (πελάτης).

  • Δαίμονας Docker: Ως διακομιστής για τον κινητήρα Docker, χρησιμοποιείται μια διαδικασία δαίμονα. Ο δαίμονας Docker εκτελείται στο παρασκήνιο του συστήματος-ξενιστή και χρησιμοποιείται για τον κεντρικό έλεγχο του κινητήρα Docker. Αυτή η λειτουργία δημιουργεί και διαχειρίζεται όλες τις εικόνες, τα κοντέινερ ή τα δίκτυα.
  • REST-API: Το REST-API καθορίζει ένα σύνολο διεπαφών που επιτρέπουν σε άλλα προγράμματα να επικοινωνούν με το δαίμονα Docker και να του δίνουν οδηγίες. Ένα από αυτά τα προγράμματα είναι το τερματικό του λειτουργικού συστήματος.
  • Τερματικό: Ως πρόγραμμα-πελάτης, το Docker χρησιμοποιεί το τερματικό του λειτουργικού συστήματος. Αυτό, ενσωματωμένο με το δαίμονα Docker μέσω του REST-API, επιτρέπει στους χρήστες να το ελέγχουν μέσω σεναρίων ή εισόδου χρήστη.
Tip

Το 2017, ο κινητήρας Docker μετονομάστηκε σε Docker Community Edition (συντομογραφία: Docker CE), αλλά η επίσημη τεκμηρίωση και τα αποθετήρια του Docker εξακολουθούν ως επί το πλείστον να χρησιμοποιούν την παλιά ονομασία. Εκτός από το Docker CE, υπάρχει επίσης το Docker Enterprise Edition (Docker EE), το οποίο διαθέτει ορισμένες λειτουργίες premium. Ωστόσο, δεν είναι δωρεάν και απευθύνεται κυρίως σε επιχειρήσεις.

Με τις εντολές του Docker, τα κοντέινερ λογισμικού των χρηστών μπορούν να εκκινούνται, να τερματίζονται και να διαχειρίζονται απευθείας από το τερματικό. Η επικοινωνία με το δαίμονα πραγματοποιείται μέσω της εντολής docker και εντολών όπως build, pull ή run. Ο πελάτης και ο διακομιστής μπορούν να βρίσκονται στο ίδιο σύστημα. Οι χρήστες έχουν επίσης τη δυνατότητα να έχουν πρόσβαση σε ένα δαίμονα Docker σε άλλο σύστημα. Ανάλογα με τον τύπο της σύνδεσης που δημιουργείται, η επικοινωνία μεταξύ του πελάτη και του διακομιστή πραγματοποιείται μέσω του REST-API, μέσω υποδοχών UNIX ή μέσω μιας διεπαφής δικτύου.

Το παρακάτω διάγραμμα απεικονίζει την αλληλεπίδραση των επιμέρους στοιχείων του Docker με τις εντολές docker build, docker pull και docker run:

Image: Schematic representation of the Docker architecture
'The Docker architecture is based on the cooperation of the client (terminal'), διακομιστής (daemon του Docker) και μητρώο (Docker Hub).»

Η εντολή docker build δίνει εντολή στο δαίμονα του Docker να δημιουργήσει μια εικόνα (διακεκομμένη γραμμή). Για τον σκοπό αυτό, πρέπει να υπάρχει διαθέσιμο ένα αντίστοιχο αρχείο Dockerfile. Εάν η εικόνα δεν πρόκειται να δημιουργηθεί, αλλά να φορτωθεί από ένα αποθετήριο στο Docker Hub, τότε χρησιμοποιείται η εντολή docker pull (διακεκομμένη γραμμή). Εάν δοθεί εντολή στο δαίμονα Docker μέσω docker run να εκκινήσει ένα κοντέινερ, το πρόγραμμα παρασκηνίου ελέγχει εάν η αντίστοιχη εικόνα κοντέινερ είναι διαθέσιμη τοπικά. Εάν είναι, τότε το κοντέινερ εκτελείται (συνεχής γραμμή). Εάν ο δαίμονας δεν μπορεί να βρει την εικόνα, ξεκινά αυτόματα μια λήψη από το αποθετήριο.

Εργασία με το Docker

Τώρα ήρθε η ώρα να εξοικειωθείτε με τις εφαρμογές της πλατφόρμας κοντέινερ. Αν δεν έχετε εγκαταστήσει ακόμα τον κινητήρα Docker, μπορείτε να το κάνετε μέσω του τερματικού του Linux. Μπορείτε να βρείτε οδηγίες για το πώς να το κάνετε αυτό στο άρθρο μας με τίτλο«Εγκατάσταση του Docker στο Ubuntu 22.04». Μάθετε παρακάτω πώς να χειρίζεστε τον κινητήρα Docker από το τερματικό, τι μπορεί να σας προσφέρει το Docker Hub και γιατί τα κοντέινερ Docker μπορούν να φέρουν επανάσταση στον τρόπο με τον οποίο εργάζεστε με τις εφαρμογές.

Πώς να διαχειριστείτε τον κινητήρα Docker

Από την έκδοση 16.04, το Ubuntu χρησιμοποιεί το πρόγραμμα παρασκηνίου systemd(συντομογραφία του «system daemon») για τη διαχείριση των διεργασιών.Το systemd είναιμια διεργασία εκκίνησης (init), η οποία χρησιμοποιείται και σε άλλες διανομές Linux, όπως το RHEL, το CentOS ή το Fedora. Συνήθως,το systemd λαμβάνειτον αριθμό διεργασίας 1. Ως πρώτη διεργασία του συστήματος, ο δαίμονας είναι υπεύθυνος για την εκκίνηση, την παρακολούθηση και τον τερματισμό όλων των επόμενων διεργασιών. Στις προηγούμενες εκδόσεις του Ubuntu (14.10 και παλαιότερες), τοπρόγραμμα παρασκηνίου upstart αναλαμβάνει αυτή τη λειτουργία.

Το δαίμονα του Docker μπορεί επίσης να ελέγχεται μέσω του systemd. Στην τυπική εγκατάσταση, η πλατφόρμα κοντέινερ έχει ρυθμιστεί έτσι ώστε το δαίμονα να ξεκινά αυτόματα κατά την εκκίνηση του συστήματος. Αυτή η προεπιλεγμένη ρύθμιση μπορεί να προσαρμοστεί μέσω του εργαλείου γραμμής εντολών systemctl.

Με το systemctl, στέλνετε εντολές στο systemd για να ελέγξετε μια διεργασία ή να ζητήσετε πληροφορίες για την κατάστασή της. Η σύνταξη μιας τέτοιας εντολής έχει ως εξής:

systemctl [OPTION] [COMMAND]
bash

Ορισμένες εντολές αναφέρονται σε συγκεκριμένους πόρους (για παράδειγμα, το Docker). Στην ορολογία του systemd, αυτοί ονομάζονται «μονάδες». Σε αυτή την περίπτωση, η εντολή αποτελείται από την αντίστοιχη οδηγία και το όνομα της μονάδας στην οποία απευθύνεται.

Αν θέλετε να ενεργοποιήσετε την αυτόματη εκκίνηση του δαίμονα Docker (ενεργοποίηση) ή να την απενεργοποιήσετε (απενεργοποίηση), χρησιμοποιήστε το εργαλείο γραμμής εντολών systemctl με τις ακόλουθες εντολές:

sudo systemctl enable docker
sudo systemctl disable docker
bash

Το εργαλείο γραμμής εντολών systemctl σας επιτρέπει να ελέγξετε την κατάσταση μιας μονάδας:

sudo systemctl status docker
bash

Εάν ο μηχανισμός Docker στο σύστημα Ubuntu σας είναι ενεργός, τότε η έξοδος στο τερματικό θα πρέπει να μοιάζει με την παρακάτω οθόνη:

Image: The status query via systemctl shows: The Docker engine is active (running)
Status query via systemctl: The Docker Engine is active (running)

Εάν ο κινητήρας Docker είναι απενεργοποιημένος αυτή τη στιγμή, θα λάβετε την ένδειξη κατάστασης «inactive (dead)». Σε αυτή την περίπτωση, πρέπει να εκκινήσετε χειροκίνητα το δαίμονα Docker για να εκτελέσετε κοντέινερ.

Image: The status query via systemctl shows: The Docker engine is inactive (dead)
Status query via systemctl: The Docker engine is inactive (dead)

Αν θέλετε να ξεκινήσετε, να σταματήσετε ή να επανεκκινήσετε χειροκίνητα τον κινητήρα Docker, εκτελέστε μία από τις παρακάτω εντολές στο systemd.

Για να ξεκινήσετε το απενεργοποιημένο δαίμονα, χρησιμοποιήστε το systemctl σε συνδυασμό με την εντολή start:

sudo systemctl start docker
bash

Αν θέλετε να τερματίσετε το δαίμονα του Docker, χρησιμοποιήστε την εντολή stop:

sudo systemctl stop docker
bash

Η εντολή restart ζητά την επανεκκίνηση του κινητήρα:

sudo systemctl restart docker
bash

Πώς να χρησιμοποιήσετε το Docker Hub

Αν ο κινητήρας Docker αποτελεί την καρδιά της πλατφόρμας κοντέινερ, τότε το Docker Hub είναι η ψυχή του έργου ανοιχτού κώδικα. Εδώ συναντάται η κοινότητα. Σε αυτό το μητρώο που βασίζεται στο cloud, οι χρήστες μπορούν να βρουν όλα όσα χρειάζονται για να δώσουν ζωή στην εγκατάστασή τους του Docker.

Η διαδικτυακή υπηρεσία προσφέρει διάφορα επίσημα αποθετήρια με περισσότερες από 100.000 δωρεάν εφαρμογές. Οι χρήστες έχουν τη δυνατότητα να δημιουργήσουν ένα αρχείο εικόνων και να το χρησιμοποιούν από κοινού με ομάδες εργασίας. Εκτός από την επαγγελματική υποστήριξη που παρέχει η ομάδα ανάπτυξης, οι αρχάριοι μπορούν να βρουν εδώ τρόπους επικοινωνίας με την κοινότητα των χρηστών. Στο GitHub υπάρχει ένα φόρουμ για την υποστήριξη της κοινότητας.

Image: The Docker hub: Registration
Create your personal Docker ID for free by registering / Source: hub.docker.com

Εγγραφή στο Docker Hub

Η εγγραφή στο Docker Hub είναι δωρεάν. Οι χρήστες χρειάζονται μόνο μια διεύθυνση email και το Docker ID που έχουν επιλέξει. Αυτό χρησιμεύει αργότερα ως προσωπικός χώρος αποθήκευσης και παρέχει στους χρήστες πρόσβαση σε όλες τις υπηρεσίες του Docker. Προς το παρόν, αυτή η προσφορά περιλαμβάνει το Docker Cloud, το Docker Store και επιλεγμένα προγράμματα beta, εκτός από το Docker Hub. Επιτρέπει επίσης τη χρήση του Docker ID ως στοιχείων σύνδεσης για το κέντρο υποστήριξης του Docker, καθώς και για το Docker Success Portal και το φόρουμ του Docker.

Η διαδικασία εγγραφής αποτελείται από πέντε βήματα:

  1. Επιλέξτε το Docker ID σας: Ως πρώτο βήμα της διαδικασίας εγγραφής, επιλέξτε ένα όνομα χρήστη που θα χρησιμοποιηθεί αργότερα ως το προσωπικό σας Docker ID.
  2. Εισαγάγετε μια διεύθυνση email: Εισαγάγετε την τρέχουσα διεύθυνση email σας. Σημειώστε ότι θα πρέπει να επιβεβαιώσετε την εγγραφή σας στο Docker Hub μέσω email.
  3. Επιλέξτε έναν κωδικό πρόσβασης: Επιλέξτε έναν μυστικό κωδικό πρόσβασης.
  4. Υποβάλετε την εγγραφή σας: Κάντε κλικ στο «Εγγραφή» για να υποβάλετε την εγγραφή σας. Μόλις μεταδοθούν πλήρως τα δεδομένα, το Docker θα στείλει έναν σύνδεσμο για να επαληθεύσετε τη διεύθυνση email σας στο συγκεκριμένο φάκελο εισερχομένων που έχετε καθορίσει.
  5. Επιβεβαιώστε τη διεύθυνση email σας: Επιβεβαιώστε τη διεύθυνση email σας κάνοντας κλικ στον σύνδεσμο επαλήθευσης.

Οι διαδικτυακές υπηρεσίες του έργου Docker είναι άμεσα διαθέσιμες μετά την εγγραφή σας στον περιηγητή. Εδώ μπορείτε να δημιουργήσετε αποθετήρια και ομάδες εργασίας ή να αναζητήσετε δημόσιους πόρους στο Docker Hub χρησιμοποιώντας την επιλογή «Εξερεύνηση».

Image: Dashboard of the Docker hub
Select and set repositories and workgroups via the Docker hub dashboard / Source: hub.docker.com

Μπορείτε επίσης να συνδεθείτε απευθείας από το τερματικό του λειτουργικού σας συστήματος χρησιμοποιώντας την εντολή docker login. Μια αναλυτική περιγραφή της εντολής μπορείτε να βρείτε στην τεκμηρίωση του Docker.

Κατ’ αρχήν, το Docker Hub είναι διαθέσιμο και σε όσους δεν διαθέτουν λογαριασμό ή Docker ID. Σε αυτή την περίπτωση, όμως, είναι δυνατή μόνο η φόρτωση εικόνων από δημόσια αποθετήρια. Η μεταφόρτωση (push) των δικών σας εικόνων δεν είναι δυνατή χωρίς Docker ID.

Δημιουργία αποθετηρίων στο Docker Hub

Ο δωρεάν λογαριασμός στο Docker Hub περιλαμβάνει ένα ιδιωτικό αποθετήριο και προσφέρει τη δυνατότητα δημιουργίας απεριόριστου αριθμού δημόσιων αποθετηρίων. Εάν χρειαστείτε περισσότερα ιδιωτικά αποθετήρια, μπορείτε να τα αποκτήσετε με μια αναβάθμιση επί πληρωμή.

Για να δημιουργήσετε ένα αποθετήριο, ακολουθήστε τα παρακάτω βήματα:

  1. Επιλέξτε ένα χώρο ονομάτων: Τα αποθετήρια που δημιουργούνται πρόσφατα αντιστοιχίζονται αυτόματα στον χώρο ονομάτων του Docker ID σας. Έχετε επίσης τη δυνατότητα να εισαγάγετε το αναγνωριστικό ενός οργανισμού στον οποίο ανήκετε.
  2. Ονομάστε το αποθετήριο: Εισαγάγετε ένα όνομα για το νεοδημιουργημένο αποθετήριο.
  3. Προσθέστε μια περιγραφή: Προσθέστε μια σύντομη περιγραφή για το αποθετήριό σας.
  4. Ορίστε την ορατότητα: Αποφασίστε αν το αποθετήριο θα είναι ορατό στο κοινό (δημόσιο) ή αν θα είναι προσβάσιμο μόνο από εσάς ή τον οργανισμό σας (ιδιωτικό).

Επιβεβαιώστε τις καταχωρίσεις σας κάνοντας κλικ στο «Δημιουργία».

Image: The Docker hub: Input screen for creating a repository
Your repositories are automatically created in the namespace of your Docker ID / Source: hub.docker.com

Δημιουργία ομάδων και οργανισμών

Μέσω του hub, το Docker παρέχει μια πλατφόρμα βασισμένη στο cloud, στην οποία οι εικόνες που δημιουργούνται από τους χρήστες διαχειρίζονται κεντρικά και μοιράζονται εύκολα με ομάδες εργασίας. Στην ορολογία του Docker, αυτές ονομάζονται «οργανισμοί». Ακριβώς όπως και οι λογαριασμοί χρηστών, οι οργανισμοί λαμβάνουν μοναδικά αναγνωριστικά, μέσω των οποίων μπορούν να παρέχονται και να κατεβαίνουν εικόνες. Τα δικαιώματα και οι ρόλοι εντός ενός οργανισμού μπορούν να εκχωρηθούν μέσω ομάδων. Για παράδειγμα, οι χρήστες που έχουν ενταχθεί στην ομάδα «Ιδιοκτήτες» έχουν την εξουσία να δημιουργούν ιδιωτικά ή δημόσια αποθετήρια και να εκχωρούν δικαιώματα πρόσβασης.

Οι ομάδες εργασίας μπορούν επίσης να δημιουργηθούν και να διαχειριστούν απευθείας μέσω του πίνακα ελέγχου. Περισσότερες πληροφορίες σχετικά με τους οργανισμούς και τις ομάδες μπορείτε να βρείτε στην τεκμηρίωση του Docker.

Εργασία με εικόνες και κοντέινερ

Ως το πρώτο σημείο επαφής για τους επίσημους πόρους του Docker, το Docker Hub αποτελεί το σημείο εκκίνησης για αυτή την εισαγωγή στη διαχείριση εικόνων και κοντέινερ. Η ομάδα προγραμματιστών έχει διαθέσει την εικόνα επίδειξης «whalesay», η οποία θα χρησιμεύσει ως βάση για το παρακάτω σεμινάριο Docker.

Λήψη εικόνων Docker

Μπορείτε να βρείτε την εικόνα «whalesay» αν επισκεφθείτε τον ιστότοπο του Docker Hub και πληκτρολογήσετε τον όρο «whalesay» στη γραμμή αναζήτησης δίπλα στο λογότυπο του Docker.

Image: The search function in Docker hub
Search the Docker hub using the search bar or the ‘Explore’ button / Source: hub.docker.com

Στα αποτελέσματα αναζήτησης, κάντε κλικ στον πόρο με τον τίτλο docker/whalesay για να αποκτήσετε πρόσβαση στο δημόσιο αποθετήριο αυτής της εικόνας.

Τα αποθετήρια Docker είναι πάντα δομημένα με τον ίδιο τρόπο. Στην κεφαλίδα της σελίδας, οι χρήστες βλέπουν τον τίτλο της εικόνας, την κατηγορία του αποθετηρίου και την ώρα της τελευταίας μεταφόρτωσης (last pushed).

Image: Web view of a Docker repository
In the repository, users generally find all information that is needed to use an image / Source: hub.docker.com

Κάθε αποθετήριο Docker διαθέτει επίσης τα ακόλουθα πλαίσια πληροφοριών:

  1. Περιγραφή: Λεπτομερής περιγραφή, η οποία συνήθως περιλαμβάνει οδηγίες χρήσης
  2. Εντολή Docker pull: Εντολή γραμμής εντολών που χρησιμοποιείται για τη λήψη της εικόνας από το αποθετήριο (pull)
  3. Ιδιοκτήτης: Πληροφορίες σχετικά με τον δημιουργό του αποθετηρίου
  4. Σχόλια: Ενότητα σχολίων στο τέλος της σελίδας

Τα πλαίσια πληροφοριών του αποθετηρίου δείχνουν ότι το whalesay είναι μια τροποποίηση του ανοιχτού κώδικα Perl cowsay. Το πρόγραμμα, που αναπτύχθηκε από τον Tony Monroe το 1999, δημιουργεί ένα γραφικό ASCII με τη μορφή αγελάδας, το οποίο εμφανίζεται μαζί με ένα μήνυμα στο τερματικό του χρήστη.

Για να κατεβάσετε το docker/whalesay, χρησιμοποιήστε την εντολή docker pull:

docker pull [OPTIONS] NAME [:TAG|@DIGEST]
bash

Η εντολή docker pull δίνει εντολή στο δαίμονα να φορτώσει μια εικόνα από το αποθετήριο. Καθορίζετε ποια εικόνα είναι αυτή εισάγοντας τον τίτλο της εικόνας (NAME). Μπορείτε επίσης να καθορίσετε στο Docker τον τρόπο με τον οποίο πρέπει να εκτελεστεί η επιθυμητή εντολή (OPTIONS). Οι προαιρετικές παραμέτρους περιλαμβάνουν ετικέτες (:TAG) και ατομικούς αριθμούς αναγνώρισης (@DIGEST), οι οποίοι σας επιτρέπουν να κατεβάσετε μια συγκεκριμένη έκδοση μιας εικόνας.

Μπορείτε να δημιουργήσετε ένα τοπικό αντίγραφο της εικόνας docker/whalesay με την ακόλουθη εντολή:

docker pull docker/whalesay
bash

Γενικά, μπορείτε να παραλείψετε αυτό το βήμα. Αν θέλετε να εκκινήσετε ένα κοντέινερ, το δαίμονα του Docker κατεβάζει αυτόματα τις εικόνες από το αποθετήριο που δεν μπορεί να βρει στο τοπικό σύστημα.

Εκκίνηση εικόνων Docker ως κοντέινερ

Για να εκκινήσετε μια εικόνα Docker, χρησιμοποιήστε την εντολή docker run:

docker run [OPTIONS] IMAGE [:TAG|@DIGEST] [CMD] [ARG...]
bash

Το μόνο υποχρεωτικό στοιχείο της εντολής docker run είναι το όνομα της επιθυμητής εικόνας Docker. Ωστόσο, όταν εκκινείτε ένα κοντέινερ, έχετε επίσης τη δυνατότητα να ορίσετε επιπλέον επιλογές, ετικέτες (TAGs) και DIGESTs. Επιπλέον, η εντολή docker run μπορεί να συνδυαστεί με άλλες εντολές που εκτελούνται αμέσως μόλις ξεκινήσει το κοντέινερ. Σε αυτή την περίπτωση, το CMD (COMMAND, που ορίζεται από τον δημιουργό της εικόνας και εκτελείται αυτόματα κατά την εκκίνηση του κοντέινερ) αντικαθίσταται. Άλλες προαιρετικές ρυθμίσεις μπορούν να οριστούν μέσω πρόσθετων παραμέτρων (ARG…). Αυτό καθιστά δυνατή, για παράδειγμα, την προσθήκη χρηστών ή τη μεταφορά μεταβλητών περιβάλλοντος.

Χρησιμοποιήστε την εντολή της γραμμής εντολών

docker run docker/whalesay cowsay boo
bash

για να κατεβάσετε το υπάρχον σενάριο Perl ως εικόνα και να το εκτελέσετε σε ένα κοντέινερ. Θα διαπιστώσετε ότι το whalesay διαφέρει σημαντικά από το αρχικό σενάριο.

Image: Terminal output of the container docker/whalesay: The whale says ‘boo’
If docker/whalesay is run with the standard command, the Docker whale is limited to a short ‘boo’

Εάν εκτελεστεί η εικόνα docker/whalesay, το σενάριο εμφανίζει ένα γραφικό ASCII με τη μορφή φάλαινας, καθώς και το μήνυμα κειμένου «boo», το οποίο έχει δοθεί με την εντολή cowsay στο τερματικό.

Όπως και στην δοκιμαστική εκτέλεση, το δαίμονα αναζητά πρώτα την επιθυμητή εικόνα στον τοπικό κατάλογο αρχείων. Επειδή δεν υπάρχει πακέτο με το ίδιο όνομα, ξεκινά η λήψη από το αποθετήριο του Docker. Στη συνέχεια, το δαίμονα εκκινεί το τροποποιημένο πρόγραμμα cowsay. Εάν η διαδικασία ολοκληρωθεί, το κοντέινερ τερματίζεται αυτόματα.

Όπως και το cowsay, το whalesay του Docker προσφέρει επίσης τη δυνατότητα να παρεμβαίνεις στη ροή του προγράμματος για να επηρεάσεις το κείμενο που εμφανίζεται στο τερματικό. Δοκίμασε αυτή τη λειτουργία αντικαθιστώντας το «boo» στην εντολή εξόδου με οποιαδήποτε συμβολοσειρά ή, για παράδειγμα, με ένα αστείο για φάλαινες.

sudo docker run docker/whalesay cowsay What did the shark say to the whale? What are you blubbering about?
bash
Image: Terminal output of the container docker/whalesay: A whale with an individual message
Make your Docker whale say whatever you want by placing words in his speech bubble

Εμφάνιση όλων των εικόνων Docker στο τοπικό σύστημα

Αν δεν είστε σίγουροι αν έχετε ήδη κατεβάσει μια συγκεκριμένη εικόνα, μπορείτε να δείτε μια συνολική εικόνα όλων των εικόνων που υπάρχουν στον τοπικό σας υπολογιστή. Χρησιμοποιήστε την ακόλουθη εντολή γραμμής εντολών:

sudo docker image
bash

Η εντολή docker images (εναλλακτικά docker image ls) εμφανίζει όλες τις τοπικές εικόνες, συμπεριλαμβανομένου του μεγέθους του αρχείου, της ετικέτας και του αναγνωριστικού της εικόνας.

Image: Overview of all images on the local system
The overview displays the images hello-world and docker/whalesay

Όταν εκκινείτε ένα κοντέινερ, η αντίστοιχη εικόνα κατεβαίνει ως αντίγραφο από το αποθετήριο και αποθηκεύεται μόνιμα στον υπολογιστή σας. Αυτό σας εξοικονομεί χρόνο αν θελήσετε να χρησιμοποιήσετε την εικόνα αργότερα. Νέα λήψη ξεκινά μόνο αν αλλάξει η πηγή της εικόνας, για παράδειγμα αν μια νεότερη έκδοση είναι διαθέσιμη στο αποθετήριο.

Εμφάνιση όλων των κοντέινερ στο τοπικό σύστημα

Αν θέλετε να εμφανίσετε μια συνοπτική παρουσίαση όλων των κοντέινερ που εκτελούνται στο σύστημά σας ή έχουν εκτελεστεί στο παρελθόν, χρησιμοποιήστε την εντολή docker ps σε συνδυασμό με την επιλογή --all (συντομογραφία: -a):

sudo docker ps -a
bash
Image: Overview of all containers on the local system
The overview shows all containers that have been launched on the Docker engine

Η έξοδος του τερματικού περιλαμβάνει πληροφορίες όπως το αναγνωριστικό του εκάστοτε κοντέινερ, την υποκείμενη εικόνα, την εντολή που εκτελέστηκε κατά την εκκίνηση του κοντέινερ, την ώρα εκκίνησης του κοντέινερ και την κατάστασή του.

Αν θέλετε να εμφανίσετε μόνο τα κοντέινερ που εκτελούνται αυτή τη στιγμή στο σύστημά σας, χρησιμοποιήστε την εντολή docker ps χωρίς άλλες επιλογές:

sudo docker ps
bash

Προς το παρόν, όμως, δεν θα πρέπει να υπάρχουν ενεργά κοντέινερ στο σύστημά σας.

Δημιουργία εικόνων Docker

Όχι ότι το σεμινάριό μας για το Docker δεν σας έχει δείξει πώς να βρίσκετε εικόνες στο Docker Hub, να τις κατεβάζετε και να τις εκτελείτε σε οποιοδήποτε σύστημα στο οποίο είναι εγκατεστημένος ο κινητήρας Docker. Ωστόσο, με το Docker, δεν θα έχετε μόνο πρόσβαση στο ευρύ φάσμα εφαρμογών που διατίθενται στο μητρώο. Η πλατφόρμα προσφέρει επίσης μια μεγάλη ποικιλία επιλογών για τη δημιουργία δικών σας εικόνων και την κοινή χρήση τους με άλλους προγραμματιστές.

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

  1. Δημιουργία νέου φακέλου: Η ομάδα προγραμματιστών του Docker συνιστά τη δημιουργία ενός νέου φακέλου για κάθε Dockerfile. Στο Linux, οι φάκελοι δημιουργούνται εύκολα από το τερματικό. Χρησιμοποιήστε την ακόλουθη εντολή για να δημιουργήσετε έναν φάκελο με το όνομα mydockerbuild:
mkdir mydockerbuild
bash
Image: Ubuntu terminal: The command mkdir
Create new directories with the command mkdir
  1. Πλοηγηθείτε στον νέο κατάλογο: Χρησιμοποιήστε την εντολή cd για να πλοηγηθείτε στον κατάλογο εργασίας που μόλις δημιουργήσατε.
cd mydockerbuild
bash
Image: Ubuntu terminal: The command cd
With the help of the cd command, switch to another working directory
  1. Δημιουργία νέου αρχείου κειμένου: Μπορείτε επίσης να δημιουργήσετε εύκολα αρχεία κειμένου μέσω του τερματικού στο Ubuntu. Για να το κάνετε αυτό, χρησιμοποιήστε έναν επεξεργαστή κειμένου όπως το Nano ή το Vim. Δημιουργήστε ένα αρχείο κειμένου με το όνομα Dockerfile στον κατάλογο mydockerbuild.
nano Dockerfile
bash
Image: Ubuntu terminal: Create text files with Nano
The text editor Nano is preinstalled on all Ubuntu versions
  1. Δημιουργία του αρχείου Dockerfile: Το αρχείο κειμένου που μόλις δημιουργήσατε λειτουργεί ως σχέδιο κατασκευής για την εικόνα που αναπτύσσετε μόνοι σας. Αντί να προγραμματίσουμε την εικόνα από το μηδέν, σε αυτό το σεμινάριο για το Docker θα χρησιμοποιήσουμε την εικόνα επίδειξης docker/whalesay ως πρότυπο. Η ενσωμάτωσή της γίνεται με την εντολή FROM στο αρχείο Dockerfile σας. Χρησιμοποιήστε την ετικέτα :latest για να αναφερθείτε στην πιο πρόσφατη έκδοση της εικόνας.
FROM docker/whalesay:latest

Μέχρι στιγμής, το docker/whalesay λειτουργεί με τον τρόπο που εσύ του δίνεις τα λόγια. Στο τερματικό, εμφανίζεται ακριβώς το κείμενο που πληκτρολόγησες, σε συνδυασμό με την εντολή εκκίνησης του κοντέινερ. Ωστόσο, θα ήταν πιο ενδιαφέρον αν το σενάριο δημιουργούσε αυτόματα νέο κείμενο εξόδου. Αυτό μπορεί να γίνει, για παράδειγμα, χρησιμοποιώντας το πρόγραμμα fortunes που είναι διαθέσιμο σε κάθε σύστημα Linux. Η βασική λειτουργία του fortunes είναι να δημιουργεί ρήσεις από μπισκότα τύχης και χιουμοριστικούς αφορισμούς. Χρησιμοποιήστε την ακόλουθη εντολή για να ενημερώσετε τον τρέχοντα τοπικό κατάλογο πακέτων και να εγκαταστήσετε το fortunes:

RUN apt-get -y update && apt-get install -y fortunes

Στη συνέχεια, ορίστε μια εντολή CMD. Αυτή εκτελείται μετά την εντολή RUN, εκτός αν έχει αντικατασταθεί από την εντολή call (docker run image CMD). Χρησιμοποιήστε την ακόλουθη εντολή για να εκτελέσετε το πρόγραμμα fortunes με την επιλογή -a («Επιλογή από όλες τις βάσεις δεδομένων») και να εμφανίσετε το αποτέλεσμα μέσω του προγράμματος cowsay στο τερματικό:

CMD /usr/games/fortune -a | cowsay

Το αρχείο Dockerfile σας θα πρέπει να έχει την ακόλουθη μορφή:

FROM docker/whalesay:latest
RUN apt-get -y update && apt-get install -y fortunes
CMD /usr/games/fortune -a | cowsay

Σημείωση: Οι εντολές σε ένα αρχείο Dockerfile γράφονται πάντα με μονή διαστήματα και ξεκινούν πάντα με μια λέξη-κλειδί. Η σύνταξη δεν διακρίνει μεταξύ κεφαλαίων και μικρών γραμμάτων, οπότε δεν έχει σημασία αν γράφετε με κεφαλαία ή μικρά γράμματα. Ωστόσο, έχει καθιερωθεί μια σταθερή χρήση κεφαλαίων για τις λέξεις-κλειδιά.

Image: The text editor Nano in the Ubuntu terminal
Control the text editor Nano via the key combinations given in the footer
  1. Αποθήκευση αρχείου κειμένου: Αποθηκεύστε την καταχώρισή σας. Εάν χρησιμοποιείτε τον επεξεργαστή Nano, αποθηκεύστε με το συνδυασμό πλήκτρων [CTRL] + [O] και επιβεβαιώστε με το [ENTER]. Το Nano θα εμφανίσει ένα μήνυμα ότι έχουν γραφτεί τρεις γραμμές στο επιλεγμένο αρχείο. Κλείστε τον επεξεργαστή κειμένου με το συνδυασμό πλήκτρων [CTRL] + [X].
  2. Δημιουργία εικόνας ως Dockerfile: Για να δημιουργήσετε μια εικόνα από ένα Dockerfile, μεταβείτε πρώτα στον κατάλογο όπου βρίσκεται το αρχείο κειμένου. Ξεκινήστε τη δημιουργία της εικόνας με την εντολή docker build. Εάν θέλετε να ονομάσετε ξεχωριστά την εικόνα ή να της δώσετε μια ετικέτα, χρησιμοποιήστε την επιλογή -t ακολουθούμενη από τον επιθυμητό συνδυασμό ετικέτας και ονόματος. Η τυπική μορφή είναι name:tag.

Στο παρόν παράδειγμα, θα πρέπει να δημιουργηθεί μια εικόνα με το όνομα docker-whale:

docker build -t docker-whale .
bash

Η τελευταία περίοδος υποδηλώνει ότι το σχετικό αρχείο Dockerfile βρίσκεται στον επιλεγμένο κατάλογο. Έχετε επίσης τη δυνατότητα να καθορίσετε μια διαδρομή αρχείου ή μια διεύθυνση URL για τα αρχεία προέλευσης.

Η διαδικασία δημιουργίας ξεκινά αμέσως μόλις επιβεβαιωθεί η εντολή με το πλήκτρο [ENTER]. Αρχικά, το δαίμονα του Docker ελέγχει αν διαθέτει όλα τα αρχεία που χρειάζεται για τη δημιουργία της εικόνας. Στην ορολογία του Docker, αυτό συνοψίζεται στον όρο «context».

Στη συνέχεια, εντοπίζεται η εικόνα docker/whalesay με την ετικέτα :latest:

Εάν το απαιτούμενο περιβάλλον για τη δημιουργία της εικόνας υπάρχει ήδη στο σύνολό του, τότε το δαίμονα του Docker εκκινεί την εικόνα-πρότυπο που έχει προσδιοριστεί μέσω της εντολής FROM σε ένα προσωρινό κοντέινερ και προχωρά στην επόμενη εντολή στο Dockerfile. Στο παρόν παράδειγμα, αυτή είναι η εντολή RUN, η οποία προκαλεί την εγκατάσταση του προγράμματος fortunes.

Στο τέλος κάθε βήματος της διαδικασίας δημιουργίας εικόνας, το Docker σας παρέχει ένα αναγνωριστικό για το αντίστοιχο επίπεδο που δημιουργήθηκε σε αυτό το βήμα. Αυτό σημαίνει ότι κάθε γραμμή στο υποκείμενο αρχείο Dockerfile αντιστοιχεί σε ένα επίπεδο της εικόνας που δημιουργήθηκε με βάση αυτό.

Όταν ολοκληρωθεί η εντολή RUN, το δαίμονα του Docker τερματίζει το κοντέινερ που δημιουργήθηκε για αυτήν, το διαγράφει και ξεκινά ένα νέο προσωρινό κοντέινερ για το επίπεδο της εντολής CMD. Στο τέλος της διαδικασίας δημιουργίας, αυτό το προσωρινό κοντέινερ τερματίζεται και διαγράφεται επίσης. Το Docker σας παρέχει το αναγνωριστικό της νέας εικόνας:

Successfully built a8f2048c9ab8
Image: Ubuntu terminal: Status message during image creation
Docker images are created in multiple layers

Η εικόνα που μόλις δημιουργήσατε βρίσκεται με το όνομα docker-whale στη λίστα των εικόνων που έχετε αποθηκεύσει τοπικά.

sudo docker images
bash
Image: Ubuntu terminal: Overview of all images
The newly created image in the image overview

Για να ξεκινήσετε ένα κοντέινερ από την εικόνα που μόλις δημιουργήσατε, χρησιμοποιήστε την εντολή sudo docker run σε συνδυασμό με το όνομα της εικόνας:

sudo docker run docker-whale
bash

Εάν η εικόνα δημιουργήθηκε σωστά από το Dockerfile, η φάλαινά σας θα πρέπει τώρα να σας εμπνέει με λόγια περισσότερο ή λιγότερο σοφά. Σημείωση: Κάθε φορά που επανεκκινείτε το κοντέινερ, δημιουργείται μια νέα φράση.

Image: Container based on docker-whale: Text output in the terminal
Thanks to fortunes, the ASCII whale now provides witty or wise phrases

Προσθέστε ετικέτες στις εικόνες Docker και ανεβάστε τις στο Docker Hub

Αν θέλετε να ανεβάσετε την προσαρμοσμένη εικόνα docker-whale σας στο hub και να την διαθέσετε είτε στην κοινότητα είτε σε μια ομάδα εργασίας, πρέπει πρώτα να τη συνδέσετε με ένα αποθετήριο με το ίδιο όνομα στον προσωπικό σας χώρο ονομάτων. Στην ορολογία του Docker, αυτό το βήμα ονομάζεται «tagging».

Για να δημοσιεύσετε μια εικόνα στο Docker Hub, ακολουθήστε τα παρακάτω βήματα:

  1. Δημιουργήστε ένα αποθετήριο: Συνδεθείτε στο Docker Hub χρησιμοποιώντας το Docker ID και τον προσωπικό σας κωδικό πρόσβασης και δημιουργήστε ένα δημόσιο αποθετήριο με το όνομα docker-whale.
Image: The Docker hub: Entry form for creating a repository
Create a repository for your custom image / Source: hub.docker.com
  1. Προσδιορίστε το αναγνωριστικό της εικόνας: Προσδιορίστε το αναγνωριστικό της προσαρμοσμένης εικόνας σας docker-whale χρησιμοποιώντας την εντολή docker images.
Image: Overview of all local images in the Ubuntu terminal
The command docker images lists all images that are saved on your system

Στην περίπτωσή μας, το αναγνωριστικό της εικόνας είναι a8f2048c9ab8. Το χρειαζόμαστε για την προσθήκη ετικετών στο επόμενο βήμα.

  1. Προσθέστε ετικέτα στην εικόνα: Προσθέστε ετικέτα στην εικόνα docker-whale χρησιμοποιώντας το πρόγραμμα γραμμής εντολών docker tag σύμφωνα με τα παρακάτω:
sudo docker tag [Image-ID][Docker-ID]/[Image-Name]:[TAG]
bash

Στο συγκεκριμένο παράδειγμα, η οδηγία της γραμμής εντολών για την προσθήκη ετικετών έχει ως εξής:

sudo docker tag a8f2048c9ab8 [Namespace]/docker-whale:latest
bash

Μπορείτε να ελέγξετε αν έχετε προσθέσει σωστά την ετικέτα στην εικόνα σας χρησιμοποιώντας τη συνοπτική προβολή docker images. Το όνομα του αποθετηρίου θα πρέπει πλέον να περιλαμβάνει το Docker ID σας.

Image: Ubuntu terminal: Image overview before and after tagging
Link images with your Docker ID using the command docker tag
  1. Ανεβάστε την εικόνα: Για να ανεβάσετε την εικόνα, πρέπει πρώτα να συνδεθείτε στο Docker Hub. Αυτό μπορεί να γίνει χρησιμοποιώντας την εντολή docker login.
sudo docker login
bash

Στη συνέχεια, το τερματικό θα σας ζητήσει να εισαγάγετε το όνομα χρήστη (Docker ID) και τον κωδικό πρόσβασής σας.

Image: Log in to the Docker hub via the Ubuntu terminal
Before you can upload an image to the Docker hub, you first need to log in

Εάν η σύνδεση ήταν επιτυχής, χρησιμοποιήστε την εντολή docker push για να ανεβάσετε την εικόνα σας στο αποθετήριο που μόλις δημιουργήθηκε.

sudo docker push [Namespace]/docker-whale
bash

Η διαδικασία μεταφόρτωσης θα διαρκέσει μόνο λίγα δευτερόλεπτα. Η τρέχουσα κατάσταση εμφανίζεται στο τερματικό.

Image: Ubuntu terminal: Status message of the image upload
After uploading, the image is available under the set tag latest in the Docker hub

Συνδεθείτε στο Docker Hub μέσω του προγράμματος περιήγησης για να δείτε την εικόνα που ανεβάσατε.

Image: Docker hub: The repository [Namespace]/docker-whale in the detailed view
The latest update of your repository is shown in the detailed view / Source: hub.docker.com

Αν θέλετε να ανεβάσετε περισσότερες από μία εικόνες ανά αποθετήριο, χρησιμοποιήστε διαφορετικές ετικέτες για να προσφέρετε τις εικόνες σας σε διαφορετικές εκδόσεις. Για παράδειγμα:

[Namespace]/docker-whale:latest
[Namespace]/docker-whale:version1
[Namespace]/docker-whale:version2

Μια επισκόπηση των διαφόρων εκδόσεων εικόνων βρίσκεται στο αποθετήριο του Docker Hub, στην καρτέλα «Ετικέτες».

Image: Docker hub: The ‘Tags’ tab
In the ‘Tags’ tab, you’ll find all versions of an image / Source: hub.docker.com

Ωστόσο, οι εικόνες των διαφόρων έργων θα πρέπει να διατίθενται σε ξεχωριστά αποθετήρια.

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

  1. Δοκιμαστική εκτέλεση: Ελέγξτε αν η μεταφόρτωση ολοκληρώθηκε με επιτυχία, προσπαθώντας να κατεβάσετε την εικόνα.

Σημειώστε ότι πρέπει πρώτα να διαγραφεί η τοπική έκδοση της εικόνας, προκειμένου να κατεβάσετε ένα νέο αντίγραφο με την ίδια ετικέτα. Διαφορετικά, το Docker θα αναφέρει ότι η επιθυμητή εικόνα υπάρχει ήδη στην τρέχουσα έκδοση.

Image: The Image is up to date
If an image exists locally, the pull command is cancelled

Για να διαγράψετε την τοπική εικόνα Docker, χρησιμοποιήστε την εντολή docker rmi σε συνδυασμό με τον αντίστοιχο αναγνωριστικό της εικόνας. Αυτός προσδιορίζεται, όπως συνήθως, μέσω docker images. Εάν το Docker αναφέρει σύγκρουση, π.χ. επειδή ένα αναγνωριστικό εικόνας χρησιμοποιείται σε πολλά αποθετήρια ή σε κάποιο κοντέινερ, επαναλάβετε την εντολή σας με την επιλογή --force (-f για συντομία) για να επιβάλετε τη διαγραφή.

sudo docker rmi -f a8f2048c9ab8
bash
Image: Command docker rmi in combination with the option -f (force)
Use the command docker rmi in combination with the option -f to force a deletion

Εμφάνιση ξανά της συνολικής εικόνας όλων των τοπικών εικόνων:

sudo docker Images
bash

Τα στοιχεία που διαγράφηκαν δεν θα πρέπει πλέον να εμφανίζονται στην έξοδο του τερματικού. Τώρα χρησιμοποιήστε την εντολή pull που παρέχεται στο αποθετήριο για να κατεβάσετε ένα νέο αντίγραφο της εικόνας από το Docker Hub.

sudo docker pull [Namespace]/docker-whale
bash
Image: Ubuntu terminal: Download from the Docker hub
The previously published image is successfully downloaded

Πρόσθετα θέματα και σεμινάρια για το Docker

Ο κόσμος του Docker είναι ευρύς και, με την πάροδο του χρόνου, έχει αναπτυχθεί ένα ζωντανό οικοσύστημα γύρω από τα εργαλεία του Docker. Το Docker είναι ιδιαίτερα χρήσιμο για τους διαχειριστές, ειδικά όταν διαχειρίζονται σύνθετες εφαρμογές με πολλά containers που λειτουργούν παράλληλα σε διαφορετικά συστήματα. Το Docker προσφέρει ποικίλες λειτουργίες για τον συντονισμό τέτοιων clusters. Μπορείτε να βρείτε περισσότερες πληροφορίες σχετικά με αυτό στο άρθρο μας για τον συντονισμό του Docker με τα Swarm και Compose.

Ο Ψηφιακός Οδηγός περιλαμβάνει επιπλέον εκπαιδευτικά βίντεο για τη χρήση του Docker:

  • Δημιουργία αποθετηρίου Docker
  • Τόμοι κοντέινερ Docker
  • Docker: Δημιουργία αντιγράφων ασφαλείας και επαναφορά
  • Εγκατάσταση και εκτέλεση του Docker σε διακομιστή Linux
  • Εκπαιδευτικό σεμινάριο για το Docker Compose

Το Docker είναι κατάλληλο για διάφορες περιπτώσεις χρήσης. Στον Ψηφιακό Οδηγό θα βρείτε τα ακόλουθα σεμινάρια:

Το Docker δεν είναι πάντα η καλύτερη επιλογή για κάθε εφαρμογή. Σε ένα από τα άρθρα μας παρουσιάζονται οι πιο δημοφιλείς εναλλακτικές λύσεις του Docker. Επιπλέον, διαθέτουμε πολλά άρθρα που συγκρίνουν το Docker με άλλες πλατφόρμες:

  • Kubernetes έναντι Docker
  • Openshift έναντι Docker
  • Podman έναντι Docker
Go to Main Menu