Читать книгу Docker w praktyce - Ian Miell - Страница 14
На сайте Литреса книга снята с продажи.
1.1.3. Kluczowe pojęcia
ОглавлениеW tej części omówimy kilka kluczowych pojęć Dockera przedstawionych na rysunku 1.4.
Rysunek 1.4. Podstawowe pojęcia Dockera
Przed rozpoczęciem uruchamiania poleceń Dockera warto dobrze rozumieć koncepcję obrazów, kontenerów i warstw. W skrócie, kontenery są działającymi systemami zdefiniowanymi przez obrazy. Obrazy te składają się z jednej lub więcej warstw (lub zestawów różnic) oraz pewnych metadanych Dockera.
Spójrzmy teraz na niektóre z podstawowych poleceń Dockera. Przekształcimy obrazy w kontenery, zmodyfikujemy je i dodamy warstwy do nowych obrazów, które zatwierdzimy. Nie trzeba się martwić, jeśli na razie jest to dezorientujące. Pod koniec rozdziału wszystko będzie o wiele jaśniejsze.
Kluczowe polecenia Dockera
Główną funkcją Dockera jest budowanie, dostarczanie i uruchamianie oprogramowania w dowolnym miejscu, w którym jest on dostępny. Dla użytkownika końcowego Docker to program, którego uruchamia się z linii poleceń. Podobnie jak git (lub dowolne narzędzie kontroli źródeł), ten program ma wiele podpoleceń wykonujących różne operacje. Główne podpolecenia Dockera, których będziemy używać na naszym hoście, zostały wymienione w tabeli 1.1.
Tabela 1.1. Podpolecenia Dockera
| Polecenie | Cel |
| docker build | Buduje dockerowy obraz |
| docker run | Uruchamia dockerowy obraz jako kontener |
| docker commit | Zatwierdza dockerowy kontener jako obraz |
| docker tag | Dodaje tag do dockerowego obrazu |
Obrazy i kontenery
Przy braku znajomości Dockera może to być pierwszy raz, gdy w tym kontekście trafimy na słowa „kontener” i „obraz”. Prawdopodobnie są to najważniejsze pojęcia w Dockerze, warto więc poświęcić trochę czasu, aby upewnić się, że różnica jest jasna. Na rysunku 1.5 znajduje się ilustracja tych koncepcji, z trzema kontenerami uruchomionymi z jednego podstawowego obrazu.
Rysunek 1.5. Obrazy i kontenery Dockera
Jednym ze sposobów patrzenia na obrazy i kontenery jest postrzeganie ich analogicznie do programów i procesów. W ten sposób proces może być postrzegany jako „wykonywana aplikacja”, kontener Dockera może być zaś traktowany jako wykonywany dockerowy obraz.
Znając zasady programowania obiektowego, innym sposobem patrzenia na obrazy i kontenery jest traktowanie obrazów jako klas, a kontenerów jako obiektów. Podobnie jak obiekty są konkretnymi instancjami klas, kontenery są instancjami obrazów. Możemy utworzyć wiele kontenerów z jednego obrazu i wszystkie będą od siebie odizolowane w ten sam sposób, w jaki są obiekty. Cokolwiek zmienimy w obiekcie, nie wpłynie to na definicję klasy – są to zasadniczo różne rzeczy.