Читать книгу 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

PolecenieCel
docker buildBuduje dockerowy obraz
docker runUruchamia dockerowy obraz jako kontener
docker commitZatwierdza dockerowy kontener jako obraz
docker tagDodaje 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.

Docker w praktyce

Подняться наверх