Πώς να δημιουργήσετε μια εικόνα Docker από ένα κοντέινερ

Pos Na Demiourgesete Mia Eikona Docker Apo Ena Konteiner



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

Μερικές φορές, οι χρήστες κάνουν αλλαγές στις ρυθμίσεις κοντέινερ και διαμόρφωσης, αλλά αυτές οι αλλαγές δεν πραγματοποιούνται στην εικόνα Docker. Για να αποθηκεύσετε τις αλλαγές του κοντέινερ στην εικόνα ή για να δημιουργήσετε το αντίγραφο ασφαλείας του κοντέινερ, οι χρήστες πρέπει να δημιουργήσουν μια νέα εικόνα από το κοντέινερ. Για τον συγκεκριμένο σκοπό, το « docker δέσμευση Η εντολή ” μπορεί να χρησιμοποιηθεί.

Αυτός ο οδηγός θα δείξει:







Τι είναι η εντολή 'docker commit';

Ο ' docker δέσμευση Η εντολή ” είναι ένα από τα βοηθητικά προγράμματα της γραμμής εντολών του Docker που χρησιμοποιείται για τη δέσμευση των αλλαγών και των ρυθμίσεων του κοντέινερ στην εικόνα του Docker. Χρησιμοποιείται επίσης για τη δημιουργία του αντιγράφου ασφαλείας του κοντέινερ όταν απαιτείται από τους χρήστες να αποφορτίσουν το Docker αφαιρώντας τα κοντέινερ του Docker. Ωστόσο, η εντολή docker commit περιλαμβάνει μόνο το αρχείο κοντέινερ και τις αλλαγές διαμόρφωσης στην εικόνα του Docker, δεν θα αποθηκεύσει ποτέ τα δεδομένα του τόμου που έχει προσαρτηθεί με το κοντέινερ.



Σύνταξη



docker δέσμευση < ΕΠΙΛΟΓΕΣ > < Όνομα δοχείου / Container-ID > < Εικόνα-Όνομα >

Επιλογές





Οι ακόλουθες επιλογές χρησιμοποιούνται με το ' docker δέσμευση ” εντολή για τη δημιουργία μιας εικόνας από ένα κοντέινερ με διαφορετικούς τρόπους:

< ισχυρός > Επιλογή ισχυρός td >
< td >< ισχυρός > Περιγραφή ισχυρός td >
tr >
< tr >
< td >< ισχυρός > -ένα, --συγγραφέας ισχυρός td >
< td > Χρησιμοποιείται για τον καθορισμό του ονόματος του συγγραφέα που πραγματοποιεί τις αλλαγές του κοντέινερ σε η εικόνα. td >
tr >
< tr >
< td >< ισχυρός > -ντο, --αλλαγή ισχυρός td >
< td > Προσθέστε τις οδηγίες Dockerfile για να πραγματοποιήσετε τις αλλαγές σε μια εικόνα. td >
tr >
< tr >
< td >< ισχυρός > -m, --μήνυμα ισχυρός td >
< td > Προσθέστε το μήνυμα ή το σχόλιο δέσμευσης ενώ δημιουργία εικόνας από το δοχείο. td >
tr >
< tr >
< td >< ισχυρός > -p, --παύση ισχυρός td >
< td > Κατά τη δέσμευση του κοντέινερ, από προεπιλογή, το κοντέινερ θα σταματήσει ή θα τεθεί σε παύση. Για να σταματήσετε την παύση του δοχείου, το ' < ισχυρός > --παύση= ψευδής ισχυρός > Χρησιμοποιείται η επιλογή.

Πώς να δημιουργήσετε μια εικόνα από ένα κοντέινερ Docker;

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



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

Βήμα 1: Δημιουργήστε το Dockerfile

Πρώτα, δημιουργήστε ένα νέο αρχείο με το όνομα ' Dockerfile ” και μην προσθέσετε καμία επέκταση αρχείου με το όνομα αρχείου. Μετά από αυτό, επικολλήστε τις ακόλουθες εντολές στο 'Dockerfile'

ΑΠΟ nginx: πιο πρόσφατο

COPY index.html / usr / μερίδιο / nginx / html / index.html

ΣΗΜΕΙΟ ΕΙΣΟΔΟΥ [ 'nginx' , '-σολ' , 'Δαίμονας μακριά' ]

Εδώ, το « ΑΠΟ Η εντολή ' χρησιμοποιείται για τον ορισμό της εικόνας βάσης του κοντέινερ, η ' ΑΝΤΙΓΡΑΦΟ Η εντολή ” αντιγράφει το αρχείο προγράμματος στην καθορισμένη διαδρομή του κοντέινερ και το “ ΣΗΜΕΙΟ ΕΙΣΟΔΟΥ Η εντολή ” ορίζει τα προεπιλεγμένα εκτελέσιμα του κοντέινερ.

Βήμα 2: Δημιουργία αρχείου προγράμματος

Στη συνέχεια, δημιουργήστε ένα άλλο αρχείο ' index.html ” και προσθέστε τον ακόλουθο κώδικα HTML στο αρχείο:

< html >

< κεφάλι >

< στυλ >

σώμα {

χρώμα φόντου:rgb ( 9 , 4 , 4 ) ;

}

h1 {

χρώμα: rgb ( 221 , 219 , 226 ) ;

στυλ γραμματοσειράς: πλάγια;

}

στυλ >

κεφάλι >

< σώμα >

< h1 > Αυτή είναι η πρώτη σελίδα HTML h1 >

σώμα >

html >

Βήμα 3: Δημιουργήστε το στιγμιότυπο του Container

Τώρα, δημιουργήστε το στιγμιότυπο του κοντέινερ από το Dockerfile χρησιμοποιώντας την παρακάτω εντολή. Εδώ, το « Η επιλογή ' χρησιμοποιείται για να ορίσετε το όνομα του στιγμιότυπου:

κατασκευή λιμενεργατών demo-img .

Βήμα 4: Εκτελέστε το Snapshot για να ξεκινήσετε το κοντέινερ

Στη συνέχεια, ξεκινήστε το κοντέινερ εκτελώντας την εικόνα του κοντέινερ. Για το σκοπό αυτό, χρησιμοποιήστε το « docker run ' εντολή:

τρέξιμο docker 80 : 80 --όνομα demo-cont -ρε demo-img

Στην παραπάνω εντολή, το ' Η επιλογή ' ορίζει τη θύρα έκθεσης του κοντέινερ, ' -όνομα ' καθορίζει το όνομα του κοντέινερ και το ' -ρε ” Η επιλογή εκτελεί το κοντέινερ σε λειτουργία αποσύνδεσης:

Μετά την εκτέλεση του κοντέινερ, μεταβείτε στο ' http://localhost:80 ” URL και ελέγξτε εάν το πρόγραμμα με κοντέινερ είναι προσβάσιμο στη θύρα έκθεσης ή όχι:

Η παραπάνω έξοδος δείχνει ότι έχουμε ξεκινήσει με επιτυχία το κοντέινερ.

Βήμα 5: Δημιουργήστε ένα νέο αρχείο προγράμματος

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

Για το σκοπό αυτό, ας δημιουργήσουμε ένα άλλο αρχείο με το όνομα ' index1.html ” και επικολλήστε τον ακόλουθο κώδικα στο αρχείο:

< html >

< κεφάλι >

< στυλ >

σώμα {

χρώμα φόντου:rgb ( 106 , 103 , 103 ) ;

}

h1 {

χρώμα: rgb ( 221 , 219 , 226 ) ;

στυλ γραμματοσειράς: πλάγια;

}

στυλ >

κεφάλι >

< σώμα >

< h1 > Αυτή είναι η δεύτερη σελίδα HTML h1 >

σώμα >

html >

Βήμα 6: Αντιγράψτε το νέο αρχείο προγράμματος στο Container

Για να αντιγράψετε το νέο αρχείο στη διαδρομή του κοντέινερ, χρησιμοποιήστε το ' docker cp <όνομα αρχείου> : <διαδρομή προορισμού του κοντέινερ> ' εντολή. Εδώ, έχουμε αντιγράψει το ' index1.html ' αρχείο στο ' demo-cont » καθορισμένη διαδρομή του κοντέινερ:

λιμενεργάτης cp index1.html demo-cont: / usr / μερίδιο / nginx / html / index1.html

Βήμα 7: Πραγματοποιήστε τις αλλαγές του κοντέινερ στη νέα εικόνα

Μετά την πραγματοποίηση αλλαγών σε ένα κοντέινερ, οι χρήστες πρέπει να πραγματοποιήσουν τις αλλαγές σε μια νέα εικόνα Docker. Αυτή η εικόνα θα δημιουργηθεί μέσω ενός κοντέινερ Docker. Για το σκοπό αυτό, εκτελέστε το ' docker commit ' εντολή:

docker commit demo-cont new-demo-img

Σημείωση: Πραγματοποίηση αλλαγών στο κοντέινερ Docker πριν από τη δημιουργία της εικόνας μέσω του ' docker δέσμευση Η εντολή δεν είναι υποχρεωτική. Οι χρήστες μπορούν να χρησιμοποιήσουν απευθείας το 'docker commit' για να δημιουργήσουν το αντίγραφο ασφαλείας του κοντέινερ δημιουργώντας την εικόνα.

Βήμα 8: Επιβεβαίωση

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

εικόνες αποβάθρας

Η παρακάτω έξοδος δείχνει ότι δημιουργήσαμε με επιτυχία το ' new-demo-img ' από ' demo-cont ” δοχείο:

Σημείωση: Για να ωθήσει την εικόνα Docker στο μητρώο Docker hub, ο χρήστης μπορεί επίσης να προσθέσει ετικέτα στην εικόνα χρησιμοποιώντας το ' ετικέτα docker ' εντολή:

ετικέτα docker < εικόνα-όνομα > < αποθετήριο-όνομα >>< εικόνα-όνομα > : < ετικέτα / εκδοχή >

Βήμα 9: Αφαιρέστε το παλιό δοχείο

Τώρα, αφαιρέστε το παλαιότερο δοχείο. Για το σκοπό αυτό, πρώτα, σταματήστε το κοντέινερ Docker χρησιμοποιώντας το ' στάση βάσης ' εντολή:

docker stop demo-cont

Αφού σταματήσετε το δοχείο, χρησιμοποιήστε το ' docker rm ” εντολή για να το αφαιρέσετε από το Docker:

λιμενεργάτης rm demo-cont

Βήμα 10: Εκτελέστε νέο κοντέινερ από νέα δεσμευμένη εικόνα

Τώρα, ξεκινήστε τη νέα παρουσία ή το κοντέινερ Docker χρησιμοποιώντας τη νέα εικόνα που δημιουργήθηκε μέσω του ' τρέξιμο docker ' εντολή:

τρέξιμο docker 80 : 80 --όνομα demo-cont -ρε new-demo-img

Τώρα, μεταβείτε στο ' localhost:80 ' port και ελέγξτε εάν η εφαρμογή HTML εκτελείται αποτελεσματικά ή όχι:

Για να ελέγξετε το νέο αρχείο που αντιγράφηκε ότι είναι ' index1.html », χρησιμοποιήστε το « http://localhost/index1.html URL:

Η παραπάνω έξοδος δείχνει ότι οι δεσμευμένες αλλαγές αποθηκεύονται με επιτυχία στο ' new-demo-img ” Εικόνα Docker και έχουμε λειτουργήσει αποτελεσματικά το τροποποιημένο κοντέινερ.

Πώς να ορίσετε τον συγγραφέα μιας εικόνας;

Ο ' docker δέσμευση Η εντολή ” υποστηρίζει επίσης διαφορετικές επιλογές για την προσθήκη πρόσθετων πληροφοριών μαζί με δεσμευμένες αλλαγές όπως ο συγγραφέας των νέων αλλαγών, το μήνυμα δέσμευσης κ.λπ.

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

Βήμα 1: Ορίστε τον συγγραφέα της εικόνας

Για να καθορίσετε τον συγγραφέα της εικόνας που κάνει τις αλλαγές, χρησιμοποιήστε το ' -ένα ' ή ' -συγγραφέας 'επιλογή μαζί με ' docker δέσμευση ' εντολή:

docker δέσμευση -ένα rafia demo-cont new-demo-img

Βήμα 2: Επιθεωρήστε την εικόνα

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

docker inspect new-demo-img

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

Πώς να ορίσετε ένα μήνυμα δέσμευσης εικόνας;

Για να ορίσετε το μήνυμα δέσμευσης μαζί με αλλαγές δέσμευσης, χρησιμοποιήστε το ' ” επιλογή. Για παράδειγμα, ακολουθήστε τις παρακάτω οδηγίες.

Βήμα 1: Ορίστε το μήνυμα δέσμευσης εικόνας

Για να ορίσετε το μήνυμα μαζί με δεσμευμένες αλλαγές, χρησιμοποιήστε το ' docker commit -m <“μήνυμα”> ' εντολή:

docker δέσμευση -ένα ράφια 'Αυτή η εικόνα δημιουργείται από κοντέινερ' demo-cont new-demo-img

Βήμα 2: Επιθεωρήστε την εικόνα

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

docker inspect new-demo-img

Σύμφωνα με το ' Σχόλιο ', ο χρήστης μπορεί να δει το μήνυμα δέσμευσης όπως φαίνεται παρακάτω:

Αυτό έχει να κάνει με τη δημιουργία μιας εικόνας Docker από ένα κοντέινερ.

συμπέρασμα

Για να δημιουργήσετε μια εικόνα Docker από ένα κοντέινερ, πρώτα κάντε τις αλλαγές στο κοντέινερ Docker. Μετά από αυτό, χρησιμοποιήστε το ' docker commit ” εντολή για τη δημιουργία της εικόνας από το κοντέινερ. Τώρα, αφαιρέστε το παλαιότερο κοντέινερ και ξεκινήστε τη νέα παρουσία μέσω της εικόνας που δημιουργήθηκε πρόσφατα. Οι χρήστες μπορούν επίσης να ορίσουν το όνομα του συγγραφέα της εικόνας χρησιμοποιώντας το ' -ένα ' και δεσμεύστε το μήνυμα χρησιμοποιώντας το ' ” επιλογή. Αυτό το ιστολόγιο επεξηγεί τον τρόπο δημιουργίας εικόνων από ένα κοντέινερ Docker.