Docker Command Cheat Sheet
Το Docker είναι μια μηχανή container εφαρμογών ανοιχτού κώδικα που επιτρέπει στους προγραμματιστές να πακετάρουν τις εφαρμογές τους και τις εξαρτήσεις τους σε ένα φορητό image, το οποίο μπορεί στη συνέχεια να δημοσιευτεί σε οποιοδήποτε δημοφιλές μηχάνημα Linux ή Windows, επιτυγχάνοντας εικονικοποίηση. Τα containers χρησιμοποιούν έναν μηχανισμό sandbox και είναι πλήρως απομονωμένα μεταξύ τους.
Γενική Χρήση
Εκκίνηση ενός container στο παρασκήνιο
docker run -d jenkinsΕκκίνηση ενός διαδραστικού container
docker run -it ubuntu bashΕκκίνηση ενός container που διαγράφεται αυτόματα όταν σταματά
docker run --rm ubuntu bash Εκκίνηση ενός container με αντιστοίχιση θυρών
docker run -p 80:80 -d nginx Εκκίνηση ενός container με όνομα
docker run --name mydb redis Εκκίνηση ενός σταματημένου container
docker start mydb Διακοπή ενός container
docker stop mydbΕκκίνηση ενός container και προσθήκη μεταδεδομένων
docker run -d \ label=traefik.backend=jenkins jenkinsΚατασκευή Images
Κατασκευή ενός image από το Dockerfile στον τρέχοντα κατάλογο
docker build --tag myimage . Αναγκαστική ανακατασκευή ενός image
docker build --no-cache . Μετατροπή ενός container σε image
docker commit c7337 myimage Διαγραφή όλων των αχρησιμοποίητων images
docker rmi $(docker images -q -f "dangling=true")Εντοπισμός Σφαλμάτων
Σύνδεση σε ένα container που εκτελείται
docker exec -it c7337 dockerΕμφάνιση αρχείων καταγραφής δραστηριότητας ενός container που εκτελείται ως δαίμονας
docker logs -f c7337Εμφάνιση των εκτεθειμένων θυρών του container
docker port c7337Volumes & Δικτύωση
Δημιουργία τοπικού volume
docker volume create --name myvol Προσάρτηση ενός volume κατά την εκκίνηση του container
docker run -v myvol:/data redisΚαταστροφή ενός volume
docker volume rm myvol Λίστα όλων των volumes
docker volume lsΔημιουργία τοπικού δικτύου
docker network create mynet Σύνδεση container στο δίκτυο κατά την εκκίνηση
docker run -d --net mynet redisΣύνδεση container σε συγκεκριμένο δίκτυο
docker network connect mynet c7337 Αποσύνδεση container από το δίκτυο
docker network disconnect mynet c7337Διαχείριση Container
Λίστα εκτελούμενων containers
docker psΛίστα όλων των containers (συμπεριλαμβανομένων αυτών που εκτελούνται και αυτών που έχουν σταματήσει)
docker ps -aΕπιθεώρηση μεταδεδομένων container
docker inspect c7337Λίστα όλων των διαθέσιμων τοπικών images
docker imagesΔιαγραφή όλων των σταματημένων containers
docker rm $(docker ps --filter status=exited -q) Λίστα όλων των containers με συγκεκριμένη ετικέτα
docker ps --filter label=traefik.backendΕρώτημα για τη διεύθυνση IP ενός εκτελούμενου container
docker inspect -f '{{ .NetworkSettings.IPAddress }}' c7337Περιγραφή
Όνομα Image
redis, jenkins, nginxΌνομα Container ή ID Commit
mydb # Όνομα Container
c7337 # ID Commit