Docker zapewnia doskonałe możliwości developerskie

Docker umożliwia uruchamianie znacznie większej liczby aplikacji na tych samych, często starych serwerach, a także bardzo ułatwia pakowanie i wysyłanie programów. Co trzeba o nim wiedzieć? Wyjaśniamy dlaczego jest tak popularny.

Docker - co to takiego? / Fot. Materiały producenta

Docker - co to takiego? / Fot. Materiały producenta

Celem Docker było uczynienie kontenerów łatwymi w użyciu. Kiedy w czerwcu 2014 r. pojawiła się wersja Docker 1.0, w świecie IT zaczęło być głośno o tym rozwiązaniu. Później, z biegiem lat, coraz więcej osób znało i wiedziało, czym jest to rozwiązanie i dlaczego warto z niego korzystać.

Sprawdź: Signal

Wiele biznesów od 2014 r. zdecydowało się na przesiadkę i przeniosło swoje aplikacje z maszyn wirtualnych (VD - virtual machine) do kontenerów. Dziś Docker, wraz ze swoim ojcem open-source o nazwie Moby, jest potężniejszy niż kiedykolwiek. W 2022 r. jest to najbardziej ulubione narzędzie na platformie Stack Overflow, a korzysta z niego ponad 7 mln aplikacji i 13 mln developerów. Obrazy Dorckera są pobierane 13 mld razy miesięcznie.

Jak czytamy na oficjalnej stronie, obecnie wszyscy główni dostawcy usług chmurowych, a także bezserwerowe platformy open source (open source serverless frameworks) wykorzystują Dockera. To nie tylko ulubieniec Canonical czy Red Hat, ale także Oracle'a czy Microsoftu.

Dlaczego firmy korzystają z Dockera?

Rozwiązania VM takie jak Hyper-V, KVM czy Xen opierają się na emulowaniu sprzętu wirtualnego, co oznacza, że mają często wysokie wymagania sprzętowe. Kontenery korzystają natomiast ze wspólnych systemów operacyjnych. W praktyce oznacza to, że są bardziej oszczędne pod względem zapotrzebowania na zasoby systemowe.

Zamiast wirtualizować sprzęt, kontenery spoczywają na pojedynczej instancji Linuksa. Jak przekonują niektórzy eksperci, którzy wcześniej polegali na typowych VM-ach, możemy zostawić jakieś 99% niepotrzebnych "śmieci" VM i zachować tylko małą kapsułkę, która zawiera naszą aplikację - tym właśnie są kontenery. To oczywiście przesada, niemniej w praktyce system kontenerowy może zawierać od czterech do sześciu razy więcej instancji aplikacji serwerowych niż przy użyciu, na tym samym sprzęcie, maszyn wirtualnych Xen lub KVM.

Inny powód, przez który kontenery zyskały taką popularność? Wpisują się w CI/CD, czyli podejście Continuous Integration/Continuous Deployment. To metodologia DevOps zaprojektowana w celu zachęcania programistów do wczesnego i częstego integrowania kodu ze współdzielonym repozytorium, a następnie do szybkiego i wydajnego wdrażania.

Docker umożliwia developerom szybkie i łatwe pakowanie, wysyłanie i uruchamianie dowolnej aplikacji jako lekkiego, przenośnego, samowystarczalnego kontenera. Takiego, w który możemy uruchamiać praktycznie w dowolnym miejscu.

Zobacz: Oszust z Tindera

Kontenery, inaczej mówiąc, umożliwiają izolowanie kodu w jednym miejscu. To ułatwia modyfikację i wprowadzanie aktualizacji, a ponadto przedsiębiorstwa mogą rozbijać duże projekty programistyczne na wiele mniejszych, zarządzanych w zespołach Agile. To otwiera możliwości do wydajniejszego dostarczania oprogramowania, a także automatyzacji niektórych procesów.

Tak jak GitHub stymuluje współpracę i innowacje, udostępniając kod źródłowy, tak Docker Hub, oficjalne repozytoria i dostępne wsparcie komercyjne pomagają przedsiębiorstwom w realizacji odpowiednich projektów.

Docker idealny do chmury

Kontenty Docker są łatwe do wdrożenia w środowisku chmurowym. Są zaprojektowane w taki sposób, że można je włączyć do większości aplikacji DevOps, jak również używać samodzielnie do zarządzania środowiskami programistycznymi.

W szczególności w przypadku CI/CD Docker umożliwia tworzenie lokalnych środowisk developerskich, które są dokładnie takie, jak serwer na żywo.

Bez trudu uruchomimy wiele środowisk programistycznych z tego samego hosta z unikalnym oprogramowaniem, systemami operacyjnymi i konfiguracjami, jak również przetestujemy projekty na nowych i innych serwerach, czy też pozwolimy każdemu specjaliście pracować nad tym samym projektem, z dokładnie takimi samymi ustawieniami, ale niezależnie od lokalnego środowiska hosta.

Docker to platforma zaprojektowana po to, aby pomagać programistom w tworzeniu, udostępnianiu i uruchamianiu nowoczesnych aplikacji. Rozwiązanie to eliminuje powtarzalne, przyziemne zadania konfiguracyjne i może być używane przez cały cykl rozwoju do szybkiego, łatwego i przenośnego tworzenia aplikacji na komputery i w chmurze.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200