Απάντηση 1:

docker engine και daemon είναι τα ονόματα που χρησιμοποιούνται εναλλακτικά. Αναφέρεται στην ίδια οντότητα.

Εάν κοιτάξετε το παραπάνω διάγραμμα, υπάρχουν δύο οντότητες εδώ

  1. Docker Client: Πρόκειται για το βοηθητικό πρόγραμμα που χρησιμοποιούμε όταν τρέχουμε εντολές docker, π.χ. τρέξιμο docker (τρέξιμο container docker), εικόνες docker, docker ps κλπ. Μας επιτρέπει να τρέχουμε αυτές τις εντολές τις οποίες ένας άνθρωπος μπορεί εύκολα να καταλάβει. Docker Daemon / Engine: Αυτό είναι το μέρος που κάνει το υπόλοιπο της μαγείας και ξέρει πώς να μιλήσει στον πυρήνα, κάνει το σύστημα κλήσεις να δημιουργήσει, να λειτουργήσει και να διαχειριστεί τα δοχεία, τα οποία εμείς ως χρήστες του docker δεν χρειάζεται να ανησυχείς.

Η επικοινωνία μεταξύ πελάτη docker και μηχανής docker συμβαίνει πάνω από REST api. Ο μηχανισμός αποβάθρας εκτελείται στη θύρα 2376 από προεπιλογή.


Απάντηση 2:

Επιτρέψτε μου να ξεκινήσω πρώτα με τα βασικά πρώτα.

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

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

Παρακάτω είναι η αρχιτεκτονική του Docker

Κινητήρας αποβάθρας:

  • Το Docker engine ή το Docker είναι μια εφαρμογή διακομιστή-πελάτη που κατασκευάζει και εκτελεί τα δοχεία χρησιμοποιώντας τα στοιχεία του Docker Το APRREST API είναι ένας κύριος τρόπος επικοινωνίας μεταξύ του Docker Client και του Docker Το κιβώτιο εργαλείων DaemonDocker χρησιμοποιείται για παλαιότερα συστήματα Windows και Mac με τις ακόλουθες δυνατότητες:

Docker daemon:

  • Το Docker Daemon είναι ένας διακομιστής που αλληλεπιδρά με το λειτουργικό σύστημα και εκτελεί κάθε είδους υπηρεσίες. Ο Docker Daemon ακούει για αίτημα REST API και εκτελεί την εντολή operationA dockerd χρησιμοποιείται για να ξεκινήσει ένα Docker DaemonDocker Host που τρέχει το Docker Daemon and Registry

Τώρα το σημαντικό ερώτημα είναι: "Ποια είναι η διαφορά μεταξύ του Docker daemon και του docker engine"

Το Docker Daemon ελέγχει το αίτημα του πελάτη και επικοινωνεί με τα εξαρτήματα του Docker προκειμένου να εκτελέσει μια υπηρεσία ενώ το Docker Engine ή το Docker είναι η βασική μηχανή που είναι εγκατεστημένη στη μηχανή υποδοχής σας για να δημιουργήσετε και να εκτελέσετε δοχεία χρησιμοποιώντας τα στοιχεία και τις υπηρεσίες Docker

Σε περίπτωση που θέλετε να μάθετε περισσότερα, παρακολουθήστε το παρακάτω βίντεο

Ευτυχισμένη μάθηση!


Απάντηση 3:

"Docker engine" (γνωστός και ως Docker daemon ή απλά "Docker") είναι το τμήμα του Docker το οποίο δημιουργεί και τρέχει δοχεία Docker.

Ένα δοχείο Docker είναι μια ζωντανή εμφάνιση μιας εικόνας Docker.

Μια εικόνα Docker είναι ένα αρχείο που έχετε δημιουργήσει για να εκτελέσετε μια συγκεκριμένη υπηρεσία ή πρόγραμμα σε ένα συγκεκριμένο λειτουργικό σύστημα.

Ας υποθέσουμε ότι θέλω έναν διαμεσολαβητή ιστού. ως εκ τούτου μπορώ να δημιουργήσω μια εικόνα Docker ως μια τυπική εγκατάσταση του Ubuntu 14.04 μόνο με το πακέτο squid3 εγκατεστημένο και μερικές συγκεκριμένες ρυθμίσεις που θέλω να επιβάλω τον έλεγχο ταυτότητας που θα χρησιμοποιηθεί με αυτόν τον πληρεξούσιο καλαμάρι.

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

Για τη χρήση του, πρέπει να δημιουργήσω ένα δοχείο Docker το οποίο χρησιμοποιεί αυτό το αρχείο για να γίνει ένα ζωντανό καλαμάρι VM με το config της επιλογής μου.

"Docker engine" (ή μόνο "Docker") είναι το πρόγραμμα που δημιουργεί και τρέχει το δοχείο Docker από το αρχείο εικόνας Docker.

Docker Client: Αυτό είναι το βοηθητικό πρόγραμμα που χρησιμοποιούμε όταν τρέχουμε εντολές docker, π.χ. τρέξιμο docker (τρέξιμο container docker), εικόνες docker, docker ps κλπ. Μας επιτρέπει να τρέχουμε αυτές τις εντολές που είναι κατανοητές από άνθρωπο.

Η επικοινωνία μεταξύ πελάτη docker και μηχανής docker συμβαίνει πάνω από REST api. Ο μηχανισμός αποβάθρας εκτελείται στη θύρα 2376 από προεπιλογή.