How to Setup Multinode Hadoop 2 on CentOS/RHEL Using VirtualBox
Πίνακας περιεχομένων:
- Προϋποθέσεις
- Εγκαταστήστε το Docker στο CentOS
- Εκτέλεση της εντολής Docker χωρίς Sudo
- Διεπαφή γραμμής εντολών Docker
- Εικόνες Docker
- Δοχεία υποδοχής
- συμπέρασμα
Το Docker είναι μια τεχνολογία μεταφοράς εμπορευματοκιβωτίων που σας επιτρέπει να δημιουργείτε γρήγορα, να δοκιμάζετε και να αναπτύσσετε εφαρμογές ως φορητά, αυτοδύναμα δοχεία που μπορούν να λειτουργούν οπουδήποτε.
Σε αυτό το σεμινάριο, θα δούμε πώς να εγκαταστήσετε το Docker CE στο CentOS 7 και να διερευνήσετε τις βασικές ιδέες και εντολές του Docker.
Προϋποθέσεις
Πριν συνεχίσετε με αυτό το σεμινάριο, βεβαιωθείτε ότι πληρούνται οι ακόλουθες προϋποθέσεις:
- CentOS 7 serverΕίστε συνδεδεμένοι ως χρήστης χωρίς δικαιώματα root με δικαιώματα sudo. Ελέγχετε αυτόν τον οδηγό σχετικά με τον τρόπο δημιουργίας ενός νέου χρήστη sudo.
Εγκαταστήστε το Docker στο CentOS
Παρόλο που το πακέτο Docker διατίθεται στον επίσημο χώρο αποθήκευσης του CentOS 7, ενδέχεται να μην είναι πάντα η πιο πρόσφατη έκδοση. Η συνιστώμενη προσέγγιση είναι να εγκαταστήσετε το Docker από τα αποθετήρια του Docker.
Για να εγκαταστήσετε το Docker στο διακομιστή CentOS 7 ακολουθήστε τα παρακάτω βήματα:
-
Ξεκινήστε ενημερώνοντας τα πακέτα του συστήματός σας και εγκαταστήστε τις απαιτούμενες εξαρτήσεις:
sudo yum updatesudo yum install yum-utils device-mapper-persistent-data lvm2Στη συνέχεια, εκτελέστε την ακόλουθη εντολή, η οποία θα προσθέσει το σταθερό αποθετήριο Docker στο σύστημά σας:
sudo yum-config-manager --add-repoΤώρα που είναι ενεργοποιημένη η αποθήκη Docker, εγκαταστήστε την τελευταία έκδοση του Docker CE (Community Edition) χρησιμοποιώντας το yum πληκτρολογώντας:
sudo yum install docker-ceΜόλις εγκατασταθεί το πακέτο Docker, ξεκινήστε τον δαίμονα Docker και αφήστε τον να ξεκινήσει αυτόματα κατά την εκκίνηση:
sudo systemctl start dockersudo systemctl enable dockerΓια να επαληθεύσετε ότι η υπηρεσία Docker εκτελείται:
sudo systemctl status dockerΗ έξοδος θα πρέπει να φαίνεται κάπως έτσι:
● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2018-10-31 08:51:20 UTC; 7s ago Docs: https://docs.docker.com Main PID: 2492 (dockerd) CGroup: /system.slice/docker.service ├─2492 /usr/bin/dockerd └─2498 docker-containerd --config /var/run/docker/containerd/containerd.tomlΚατά τη στιγμή της σύνταξης, η τρέχουσα σταθερή έκδοση του Docker είναι,
18.06.1, για την εκτύπωση του τύπου έκδοσης Docker:docker -vDocker version 18.06.1-ce, build e68fc7a
Εκτέλεση της εντολής Docker χωρίς Sudo
Από προεπιλογή, το Docker απαιτεί δικαιώματα διαχειριστή. Αν θέλετε να εκτελέσετε τις εντολές του Docker ως χρήστη χωρίς root χωρίς προαγωγή του
sudo
, πρέπει να προσθέσετε τον χρήστη σας στην ομάδα docker που δημιουργείται κατά την εγκατάσταση του πακέτου Docker CE. Μπορείτε να το κάνετε πληκτρολογώντας:
sudo usermod -aG docker $USER
$USER
είναι μια μεταβλητή περιβάλλοντος που κρατά το όνομα χρήστη σας.
Αποσυνδεθείτε και συνδεθείτε ξανά, ώστε να γίνει ανανέωση της ιδιότητας μέλους της ομάδας.
Για να επαληθεύσετε ότι το Docker έχει εγκατασταθεί με επιτυχία και ότι μπορείτε να εκτελέσετε εντολές docker χωρίς sudo, εκδώστε την ακόλουθη εντολή, η οποία θα κατεβάσει μια δοκιμαστική εικόνα, θα την εκτελέσει σε ένα κοντέινερ, θα εκτυπώσει ένα μήνυμα "Hello from Docker"
docker container run hello-world
Η έξοδος θα πρέπει να έχει τα εξής χαρακτηριστικά:
Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 9bb5a5d4561a: Pull complete Digest: sha256:f5233545e43561214ca4891fd1157e1c3c563316ed8e237750d59bde73361e77 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly.
Διεπαφή γραμμής εντολών Docker
Τώρα που έχουμε μια λειτουργική εγκατάσταση Docker, ας ξεπεράσουμε τη βασική σύνταξη του CLI του λιμένα.
Η γραμμή εντολών docker έχει την ακόλουθη μορφή:
docker
Μπορείτε να απαριθμήσετε όλες τις διαθέσιμες εντολές πληκτρολογώντας το
docker
χωρίς παραμέτρους:
docker
Εικόνες Docker
Μια εικόνα Docker αποτελείται από μια σειρά από στρώματα που αντιπροσωπεύουν οδηγίες στο αρχείο Dockerfile της εικόνας που αποτελούν μια εκτελέσιμη εφαρμογή λογισμικού. Μια εικόνα είναι ένα αμετάβλητο δυαδικό αρχείο που περιλαμβάνει την εφαρμογή και όλες τις άλλες εξαρτήσεις όπως τα δυαδικά αρχεία, οι βιβλιοθήκες και οι οδηγίες που απαιτούνται για τη λειτουργία της εφαρμογής. Με λίγα λόγια, μια εικόνα Docker είναι ουσιαστικά ένα στιγμιότυπο ενός δοχείου Docker.
Το Docker Hub είναι μια υπηρεσία μητρώου που βασίζεται σε νέφος, η οποία μεταξύ άλλων λειτουργιών χρησιμοποιείται για τη διατήρηση των εικόνων του Docker είτε σε δημόσιο είτε σε ιδιωτικό χώρο αποθήκευσης.
Για να πραγματοποιήσετε αναζήτηση στο αποθετήριο Hub του Docker για μια εικόνα, απλώς χρησιμοποιήστε την υποδιαίρεση
search
. Για παράδειγμα, για να αναζητήσετε την εικόνα του CentOS, εκτελέστε:
docker search centos
Η έξοδος θα πρέπει να έχει τα εξής χαρακτηριστικά:
NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official build of CentOS. 4257 ansible/centos7-ansible Ansible on Centos7 109 jdeathe/centos-ssh CentOS-6 6.9 x86_64 / CentOS-7 7.4.1708 x86_… 94 consol/centos-xfce-vnc Centos container with "headless" VNC session… 52 imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 40 tutum/centos Simple CentOS docker image with SSH access 39
Όπως μπορείτε να δείτε τα αποτελέσματα αναζήτησης εκτυπώνεται ένας πίνακας με πέντε στήλες,
NAME
,
DESCRIPTION
,
STARS
,
OFFICIAL
και
AUTOMATED
. Η επίσημη εικόνα είναι μια εικόνα την οποία αναπτύσσει το Docker σε συνεργασία με προηγούμενους εταίρους.
Αν θέλουμε να κατεβάσουμε την επίσημη έκδοση του CentOS 7, μπορούμε να το κάνουμε αυτό χρησιμοποιώντας τη υποσυνάρτηση
image pull
:
docker image pull centos
Using default tag: latest latest: Pulling from library/centos 469cfcc7a4b3: Pull complete Digest: sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Status: Downloaded newer image for centos:latest
Ανάλογα με την ταχύτητα του Internet σας, η λήψη ενδέχεται να διαρκέσει μερικά δευτερόλεπτα ή λίγα λεπτά. Μόλις ληφθεί η εικόνα, μπορούμε να απαριθμήσουμε τις εικόνες με:
docker image ls
Η έξοδος θα πρέπει να φαίνεται ως εξής:
REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest e38bc07ac18e 3 weeks ago 1.85kB centos latest e934aafc2206 4 weeks ago 199MB
Εάν για κάποιο λόγο θέλετε να διαγράψετε μια εικόνα, μπορείτε να το κάνετε αυτό με την υποδήλωση
image rm
της
image rm
:
docker image rm centos
Untagged: centos:latest Untagged: centos@sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Deleted: sha256:e934aafc22064b7322c0250f1e32e5ce93b2d19b356f4537f5864bd102e8531f Deleted: sha256:43e653f84b79ba52711b0f726ff5a7fd1162ae9df4be76ca1de8370b8bbf9bb0
Δοχεία υποδοχής
Μια περίπτωση μιας εικόνας ονομάζεται δοχείο. Ένα κοντέινερ αντιπροσωπεύει ένα χρόνο εκτέλεσης για μια ενιαία εφαρμογή, διαδικασία ή υπηρεσία.
Μπορεί να μην είναι η πιο κατάλληλη σύγκριση, αλλά αν είστε προγραμματιστής μπορείτε να σκεφτείτε μια εικόνα Docker ως κατηγορία και Docker container ως παράδειγμα μιας κλάσης.
Μπορούμε να ξεκινήσουμε, να σταματήσουμε, να αφαιρέσουμε και να διαχειριστούμε ένα κοντέινερ με την
docker container
.
Η ακόλουθη εντολή θα ξεκινήσει ένα δοχείο Docker με βάση την εικόνα CentoOS. Εάν δεν έχετε την εικόνα τοπικά, θα το κατεβάσετε πρώτα:
docker container run centos
Εκ πρώτης όψεως, μπορεί να σας φανεί ότι τίποτα δεν συνέβη καθόλου. Αυτό δεν είναι αλήθεια. Το δοχείο CentOS σταματάει αμέσως μετά την εκκίνηση, επειδή δεν έχει μια μακροχρόνια διαδικασία και δεν μας έδωσε καμία εντολή, οπότε το δοχείο εκκίνησης, έτρεξε μια κενή εντολή και στη συνέχεια εξήλθε.
Ο διακόπτης
-it
επιτρέπει να αλληλεπιδράσουμε με το δοχείο μέσω της γραμμής εντολών. Για να ξεκινήσετε έναν τύπο διαδραστικού δοχείου:
docker container run -it centos /bin/bash
Όπως μπορείτε να δείτε από την έξοδο όταν ξεκινήσει το δοχείο, η γραμμή εντολών αλλάζει, πράγμα που σημαίνει ότι εργάζεστε τώρα μέσα από το δοχείο:
#
Για να εμφανίσετε τα τρέχοντα δοχεία:, πληκτρολογήστε:
docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli
Αν δεν έχετε τρέχοντα δοχεία, η έξοδος θα είναι κενή.
Για να προβάλετε τόσο τα τρέχοντα όσο και τα σταματημένα δοχεία, περάστε το διακόπτη
-a
:
docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli c55680af670c centos "/bin/bash" 30 minutes ago Exited (0) 30 minutes ago modest_hawking c6a147d1bc8a hello-world "/hello" 20 hours ago Exited (0) 20 hours ago sleepy_shannon
Για να διαγράψετε ένα ή περισσότερα κοντέινερ, απλά αντιγράψτε το αναγνωριστικό κοντέινερ (ή αναγνωριστικά) από πάνω και επικολλήστε τα μετά την
container rm
εντολή
container rm
του
container rm
:
docker container rm c55680af670c
συμπέρασμα
Έχετε μάθει πώς να εγκαταστήσετε το Docker στο μηχάνημα CentOS 7 και πώς να κατεβάσετε τις εικόνες του Docker και να διαχειριστείτε τα δοχεία Docker. Μπορεί επίσης να θέλετε να διαβάσετε σχετικά με το Docker Compose, το οποίο σας επιτρέπει να ορίσετε και να εκτελέσετε εφαρμογές Docker πολλαπλών κοντέινερ.
Αυτό το σεμινάριο μόλις γρατζουνίζει την επιφάνεια του οικοσυστήματος Docker. Σε μερικά από τα επόμενα άρθρα μας, θα συνεχίσουμε να βουτάμε σε άλλες πτυχές του Docker. Για να μάθετε περισσότερα σχετικά με το Docker, ανατρέξτε στην επίσημη τεκμηρίωση του Docker.
Πώς να εγκαταστήσετε και να χρησιμοποιήσετε τη σύνθεση των docker σε centos 7
Το Docker Compose είναι ένα εργαλείο που σας επιτρέπει να ορίσετε και να εκτελέσετε εφαρμογές Docker πολλαπλών κοντέινερ. Με την επιλογή Σύνθεση, ορίζετε τις υπηρεσίες, τα δίκτυα και τους τόμους της εφαρμογής σε ένα μόνο αρχείο YAML και, στη συνέχεια, περιστρέψτε την εφαρμογή σας με μία μόνο εντολή.
Πώς να εγκαταστήσετε και να χρησιμοποιήσετε το docker compose στο debian 10 linux
Το Docker Compose είναι ένα εργαλείο που σας επιτρέπει να ορίσετε και να ενορχηστρώσετε εφαρμογές Docker πολλαπλών κοντέινερ. Αυτό το σεμινάριο εξηγεί πώς να εγκαταστήσετε το Docker Compose στο Debian 10, Buster.
Πώς να εγκαταστήσετε και να χρησιμοποιήσετε το docker compose στο debian 9
Το Docker Compose είναι ένα εργαλείο που σας επιτρέπει να ορίσετε και να ενορχηστρώσετε εφαρμογές Docker πολλαπλών κοντέινερ. Χρησιμοποιεί ένα αρχείο YAML για να ρυθμίσει τα κοντέινερ, τα δίκτυα και τους τόμους της εφαρμογής.







