Docker CheatSheet

W tej lekcji znajdziecie zestawienie wszystkich komend, które użyliśmy w kursie. Są tu tylko polecenia i przykłady, już bez teorii i zadań. Dzięki temu szybko będziesz mógł przypomnieć sobie jak wykonać daną operację lub akcje w Dockerze.

Dodatkowo jeden z naszych kursantów (dzięki wielkie Przemek! Świetna robota💪) przygotował ściągę w postaci pdf, którą chciał się z nami podzielić 😀 Plik jest dostępny pod adresem Docker CheatSheet pdf. Ściąga ta jest skondensowanym zbiorem komend i poleceń, które przedstawiamy w tym kursie i w tej lekcji 🙂

Instalacja (na Ubuntu)

  1. Aktualizacja apt
    sudo apt-get update
    
  2. Umożliwienie apt korzystania z połączeń po https:
    sudo apt-get install \
        apt-transport-https \
        ca-certificates \
        curl \
        gnupg-agent \
        software-properties-common
    
  3. Pobranie oficjalnego klucza GPG dla Dockera (aby możliwa była bezpieczna komunikacja z zasobami dockera):
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    
  4. Weryfikacja klucza GPG poprzez wyszukanie jego końcówki (a spodziewamy się otrzymać 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88):
    sudo apt-key fingerprint 0EBFCD88
    
  5. Dodanie repozytorium dockera:
    sudo add-apt-repository \
       "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
       $(lsb_release -cs) \
       stable"
    

    Dla wersji Ubuntu 18.04 LTS Bionic Beaver:

    sudo add-apt-repository \
       "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
       bionic \
       stable"
    
  6. Aktualizacja apt
    sudo apt-get update
    
  7. Ponowna aktualizacja apt:
    sudo apt-get update
    
  8. Instalacja serwisu Docker dla aktualnie posiadanej wersji Ubuntu:
    sudo apt-get install docker-ce docker-ce-cli containerd.io
    
  9. Test dockera po instalacji:
    sudo docker run hello-world
    

Budowanie obrazów

  1. Budowanie obrazu z pliku Dockerfile:
    sudo docker build -t [NAZWA_OBRAZU]:[TAG] .
    

    np.:

    sudo docker build -t my-image-1:0.1 .
    
  2. Budowanie obrazu z pliku o innej nazwie niż Dockerfile (np. img1.Dockerfile):
    sudo docker build -t my-image-1:0.1 -f img1.Dockerfile .
    

Uruchamianie obrazów(tworzenie kontenerów)

  1. Uruchamianie komend wewnątrz kontenera:
    sudo docker run [NAZWA_OBRAZU] [KOMENDA]
    

    np.:

    sudo docker run my-image-1:0.1 echo "Jestem w kontenerze!"
    

Podgląd obrazów

  1. Wypisanie aktualnie posiadanych obrazów:
    sudo docker image ls
    

    lub:

    sudo docker images
    

Kasowanie obrazów

  1. Usunięcie obrazu za pomocą nazwy:
    sudo docker rmi [NAZWA_OBRAZU]:[TAG_OBRAZU]
    

    np.:

    sudo docker rmi my-image-2:0.1
    
  2. Usunięcie obrazu za pomocą ID:
    sudo docker rmi [ID_OBRAZU]
    

    np.:

    sudo docker rmi 866979ca7468
    

Tagowanie i nowa nazwa

  1. Dodanie nazwy obrazu:
    sudo docker tag [STARA_NAZWA] [NOWA_NAZWA]
    

    np.:

    sudo docker tag my-image-3:0.1 jaktestowac/my-test-image:0.1
    

Podgląd kontenerów

  1. Wypisanie aktualnie posiadanych obrazów:
    sudo docker ps -a
    

Usuwanie kontenerów

  1. Usunięcie kontenera za pomocą nazwy:
    sudo docker rm [NAZWA_KONTENERA]:
    

    np.:

    sudo docker rm my-image-2:0.1
    
  2. Usunięcie kontenera za pomocą ID:
    sudo docker rm [ID_KONTENERA]
    

    np.:

    sudo docker rm 866979ca7468
    
  3. Usunięcie wszystkich zatrzymanych kontenerów:
    sudo docker container prune
    

Docker Hub

  1. Logowanie do serwisu konsoli:
    sudo docker login --username=[NAZWA_UZYTKOWNIKA]
    
  2. Wylogowanie do serwisu konsoli:
    sudo docker logout
    
  3. Wypchnięcie obrazu do Docker Hub:
    sudo docker push [nazwa_obrazu]:[tag_obrazu]
    
  4. Pobieranie obrazu z Docker Hub:
    docker pull [NAZWA_OBRAZU]
    

    np.:

    docker pull python:latest
    

Zewnętrzne zasoby i linki

Linki:

2 komentarze

  1. Czy nie lepiej dać cheatsheet w jakimś PDF?

    Plus, jak się najedzie na pole z komendą to macie dostępne przyciski, z czego przynajmniej jeden (odnośnik do EnlighterJS) nie ma sensu 🙂

    Avatar Artur Zwoliński

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *