Δημιουργία του πρώτου σας κοντέινερ Docker
Χρήση Dockerfiles
Αυτό το σεμινάριο εξηγεί τα βασικά για να ξεκινήσετε με το Docker. Υποθέτω ότι έχετε ήδη εγκαταστήσει το Docker. Τα βήματα σε αυτό το σεμινάριο θα λειτουργήσουν σε οποιαδήποτε διανομή Linux που είναι συμβατή με το Docker (CentOS, Ubuntu, κ.λπ.).
Δημιουργία του πρώτου σας κοντέινερ Docker
Το Docker δημιουργεί εικονικά κοντέινερ. Το σύστημα κοντέινερ του Docker είναι πολύ αποτελεσματικό επειδή λειτουργεί με δεσμεύσεις. Αυτό εξοικονομεί χώρο και σας επιτρέπει να βλέπετε αλλαγές στο κοντέινερ. Για παράδειγμα, εάν εγκαταστήσετε το Apache σε ένα κοντέινερ, μπορείτε να δημιουργήσετε μια δέσμευση με το όνομα "Installed Apache", ώστε να γνωρίζετε ακριβώς τι συνέβη.
Το πρώτο πράγμα που θα κάνουμε είναι να τραβήξουμε από ένα αποθετήριο. Ας πούμε ότι θέλετε να εγκαταστήσετε το Ubuntu σε ένα κοντέινερ, μπορείτε να τραβήξετε το Ubuntu από το αποθετήριο:
docker pull ubuntu
Να είστε υπομονετικοί, καθώς αυτό μπορεί να διαρκέσει λίγο. Αφού ολοκληρωθεί η λήψη όλων, μπορείτε να δημιουργήσετε ένα κοντέινερ με αυτό το λειτουργικό σύστημα:
docker run -i -t ubuntu /bin/bash
Ή με το Debian, για παράδειγμα:
docker run -i -t debian /bin/bash
Εάν δεν μπορεί να βρει το λειτουργικό σύστημα (δεν έχει τραβήξει ακόμα) θα το τραβήξει αυτόματα από το Docker Hub.
Ουσιαστικά, τώρα έχετε ένα δοχείο! Εκτελείτε bash στο αδυνατισμένο δοχείο που διαχειρίζεται το Docker. Δοκιμάστε να εκτελέσετε μερικές κοινές εντολές Linux για να πάρετε μια αίσθηση για το περιβάλλον.
Όταν πληκτρολογείτε exitγια έξοδο από το κοντέινερ και επιστροφή στο κύριο λειτουργικό σας σύστημα, όλες οι αλλαγές σας θα εξαφανιστούν. Για να αποθηκεύσουμε αλλαγές σε ένα κοντέινερ, χρησιμοποιούμε δεσμεύσεις.
Δεσμεύει
Όταν δημιουργείτε ένα κοντέινερ Docker, το όνομα κεντρικού υπολογιστή του δημιουργείται αυτόματα. Για παράδειγμα, όταν δημιουργώ ένα νέο κοντέινερ Ubuntu, μπορεί να λάβω το όνομα κεντρικού υπολογιστή f7943e42aff0. Αυτό είναι το όνομα που έδωσε το Docker στο κοντέινερ σας.
Εγκαταστήστε αυτό που θέλετε σε αυτό και βεβαιωθείτε ότι όλα λειτουργούν. Στη συνέχεια, βγείτε από το κοντέινερ Docker:
exit
Τώρα πρέπει να δεσμευτούμε. Διαφορετικά, όλες οι αλλαγές σας θα χαθούν.
docker commit -a "William E." -m "Installed Apache" f7943e42aff0 apachesnapshot
Ο -aδιακόπτης μπορεί να χρησιμοποιηθεί για να προσδιορίσει σωστά ποιος συντάκτης αυτής της δέσμευσης (ποιος έκανε τις αλλαγές στο κοντέινερ). -mείναι το μήνυμα δέσμευσης. Το f7943e42aff0είναι το όνομα κεντρικού υπολογιστή του κοντέινερ μου. Στην περίπτωσή σας θα διαφέρει, καθώς το Docker τα δημιουργεί τυχαία. apachesnapshotείναι το όνομα της εικόνας σας.
Μπορείτε να προβάλετε μια λίστα με όλες τις εικόνες στον τοπικό σας υπολογιστή. Τα νεότερα είναι στην κορυφή.
docker images
Για να ξεκινήσετε το κοντέινερ Docker με τις αλλαγές, εκτελέστε:
docker run -t -i apachesnapshot /bin/bash
Χρήση Dockerfiles
Τα Dockerfiles μπορούν να χρησιμοποιηθούν για τη δημιουργία εικόνων με ήδη εγκατεστημένες εφαρμογές. Αυτό διευκολύνει την εκκίνηση ενός κοντέινερ χωρίς να χρειάζεται να εκτελέσετε μια συγκεκριμένη εντολή. Για παράδειγμα, εάν θέλουμε να δημιουργήσουμε μια εικόνα με το αρχείο που ~/file.txtέχει ήδη δημιουργηθεί, θα χρησιμοποιήσουμε το ακόλουθο Dockerfile:
FROM ubuntu:14.04
MAINTAINER William E. <william@localhost>
RUN touch ~/file.txt
Για να δημιουργήσετε ένα κοντέινερ Docker με αυτό το Dockerfile, δημιουργήστε έναν φάκελο για το Dockerfile στον τοπικό σας υπολογιστή (εγώ χρησιμοποίησα ~/files). Τοποθετήστε τα περιεχόμενα του Dockerfile σας σε ένα αρχείο που ονομάζεται Dockerfile. Τώρα μπορείτε να δημιουργήσετε μια εικόνα με αυτό εκτελώντας:
docker build -t="test" .
Αυτό δημιουργεί μια εικόνα Docker από το σενάριο Dockerfile. Τώρα μπορείτε να τρέξετε το κοντέινερ σας. testείναι η ίδια τιμή testμε την docker buildεντολή.
docker run -t -i test /bin/bash
Όταν ανοίξει το κέλυφος bash, θα δείτε ότι ~/file.txtέχει ήδη δημιουργηθεί.
Αυτή είναι μόνο μια γεύση από τα ισχυρά περιβάλλοντα που μπορείτε να δημιουργήσετε χρησιμοποιώντας το Docker. Το επίσημο εγχειρίδιο του Docker εμβαθύνει σε αυτά τα θέματα. Σε αυτό το σημείο, θα πρέπει να μπορείτε να πειραματιστείτε με τα υπάρχοντα κοντέινερ και να αρχίσετε να απεικονίζετε τα δικά σας.
Σε σενάριο William David Edwards