fbpx
Docker Maestro → Dołącz już dziś! »»

Docker kojarzony jest głównie z terminalem, a co za tym idzie — wpisywaniem poleceń służących do uruchamiania kontenerów i zarządzania nimi. Czy można tego uniknąć i nie wpisywać tych wszystkich poleceń manualnie? Odpowiedź brzmi: TAK. Istnieje wiele narzędzi pozwalających zarządzanie Dockerem z poziomu GUI. Dzisiaj chciałbym pokazać narzędzie, które może być ciekawą alternatywą lub po prostu dodatkiem dla terminala. Mowa tutaj o narzędziu — LazyDocker.

Czym jest Lazy Docker?

Jak sama nazwa wskazuje, Lazy Docker to narzędzie stworzone dla osób, których męczy ciągłe wpisywanie różnych poleceń w terminalu. Zamiast ręcznie wpisywać polecenia, możemy uruchomić Lazy Docker, jednocześnie nie wychodząc z terminala. Po jego uruchomieniu otrzymujemy “klikalną” aplikację pozwalająca na podgląd i zarządzanie: lokalnych kontenerów, obrazów oraz volumenów. Dodatkowo posiada również wsparcie dla docker-compose.

Nie można by nie wspomnieć, że LazyDocker jest projektem open-source, dostępnym na GitHubie.

Instalacja Lazy Docker

Narzędzie posiada wsparcie dla różnych systemów operacyjnych. Oznacza, że jesteśmy w stanie uruchomić go zarówno na Linuxie, jak i na Windowsie czy Macu. Osobiście przetestowałem działanie LazyDocker na dwóch systemach: Windows 10 Pro oraz Ubuntu 18.04. W obu przypadkach instalacja przebiegła błyskawicznie, a narzędzia działa bez żadnych problemów.

Instalacja na Windows 

Najprostszym sposobem na zainstalowanie LazyDocker na systemach Windows, jest pobranie gotowego execa. Możemy go pobrać z oficjalnego repozytorium LazyDocker na GitHubie. W moim przypadku był to plik lazydocker_0.8_Windows_x86_64.zip

Wystarczy rozpakować pobrane archiwum .zip i umieścić lazydocker.exe w wybranym przez siebie katalogu.

UWAGA: Aby móc uruchomić LazyDocker w terminalu z dowolnel lokalizacji, polecam dodać katalog, w którym znajduje się lazydocker.exe do zmiennej środowiskowej $PATH. 

Gdy już to zrobimy, wystarczy w CMD lub w Powershellu wpisać lazydocker.  

Instalacja na Linuxie

W przypadku Linuxa, instalacja jest jeszcze prostsza. Wystarczy użyć następującego polecenia: 

curl https://raw.githubusercontent.com/jesseduffield/lazydocker/master/scripts/install_update_linux.sh | bash

Spowoduje to pobranie oraz dodanie binarki LazyDocker do katalogu /usr/local/bin, dzięki czemu otrzymamy również możliwość uruchomienia narzędzia z dowolnej lokalizacji.

Jeżeli instalacja zakończy się pomyślnie, wystarczy w terminalu wpisać polecenie lazydocker


Jak używać Lazy Docker?

Pozostaje nam tylko wpisanie polecenia lazydocker w dowolnym momencie, w którym chcemy z niego z skorzystać.

Po uruchomieniu narzędzia możemy posługiwać się zarówno myszką jak klawiaturą (jak komu będzie wygodniej). Na samym dole okienka znajduje się opis klawiszy, służących do nawigacji po programie.

Podgląd stanu kontenerów

Lazy Docker pozwala na podgląd zarówna działających, jak i zatrzymanych kontenerów. Oznacza to, że jesteśmy w stanie przeglądać logi, sprawdzać konfigurację, czy wyświetlić wszystkie procesy działające w kontenerze.

W zakładce „Config” możemy podejrzeć całą konfigurację kontenera, w tym też zmienne środowiskowe.

Po naciśnięciu na klawiaturze klawisza “b”, pojawia się menu, w którym mamy możliwość zatrzymania czy usunięcia wszystkich kontenerów. 

Powyższy przykład jest tylko początkiem tego, co możemy zrobić za pomocą tego narzędzia. Wybierając klawisz “x” na klawiaturze pojawia nam się kolejne menu, które oferuje znacznie więcej możliwości. 

Dzięki temu możemy już niemal w pełni kontrolować poszczególne kontenery, podobnie jak robimy to za pomocą poleceń w terminalu. Mianowicie: zatrzymać lub usunąć kontener, przejrzeć logi. W łatwy sposób możemy również “wejść do kontenera”. Wystarczy wybrać opcję “run predefined custom command”.

Spowoduje to wygenerowanie polecenia ‘docker exec’.

Po naciśnięciu Entera, wchodzimy do konsoli kontenera:


Przeglądanie warstw obrazów

Chyba najlepsza opcja, jaką oferuje to narzędzie, czyli przeglądanie warstw obrazów. Oznacza to, że możemy podejrzeć z ilu i z jakich warstw składa się poszczególny obraz.

Po prawej stronie ekranu widzimy wszystkie warstwy obrazu, który zaznaczyliśmy. W większości przypadków finalny obraz korzysta z jakiegoś obrazu bazowego (instrukcja FROM). Możemy tutaj podejrzeć, jakie warstwy znajdują się w obrazie bazowym.

Jedną z kluczowych informacji, jakie tutaj możemy uzyskać, jest rozmiar poszczególnych warstw. Zwróć uwagę na instrukcję takie jak EXPOSE czy CMD. Pomimo że dla tych instrukcji tworzone są osobne warstwy, to nie wpływają one na finalny rozmiar obrazu, gdyż zajmują 0 bajtów.

Podgląd volumenów

Ostatnia z oferowanych przez narzędzie Lazy Docker opcja to podgląd informacji o wszystkich volumenach. 

Jeżeli interesuje nas, gdzie fizycznie na dysku przechowywane są dane dla poszczególnych volumenów, to tutaj jesteśmy w stanie się tego dowiedzieć.

Wsparcie dla docker-compose

Oprócz wszystkich wymienionych funkcji, LazyDocker posiada również wsparcie dla docker-compose. Aby móc z niego skorzystać, należy uruchomić lazydocker z katalogu, w którym znajduje się plik docker-compose.yml

Poniżej przedstawiony został przykład WordPressa:

docker-compose

Potrzebujesz zrestartować którąś z usług? Wystarczy użyć „Shift + R”, a pojawi się menu z kilkoma opcjami do wyboru. Uwaga: sam klawisz „r” (bez Shift) spowoduje natychmiastowy restart kontenera.


Podsumowanie

Lazy Docker jest tylko jednym z wybranych narzędzi, które w sposób graficzny pozwalają na wyświetlanie informacji o Dockerze i zarządzanie poszczególnymi jego komponentami. Jednak jego główną zaletą jest fakt, że możemy uruchomić go bezpośrednio w terminalu. Może się to przydać szczególnie w przypadku, gdy łączymy się do zdalnego serwera po SSH i chcemy zbiorczo sprawdzić stan kontenerów czy też podglądnąć logi. Oczywiście, na zdalnym hoście również potrzebujemy go zainstalować, ale zdecydowanie nie jest wielkim problemem. Polecam! 🙂


.

Damian Naprawa

Praktykujący pasjonat konteneryzacji. Lubi dzielić się wiedzą, prowadząc warsztaty i szkolenia. Chętnie występuje również w roli prelegenta na meetupach i konferencjach. Uczestnik globalnego programu partnerskiego Docker Enablement. Pracuje z Dockerem na co dzień od kilku lat. Odpowiedzialny za tworzenie i utrzymanie systemów działających w oparciu o kontenery. Fan automatyzacji oraz podejścia "As a Code".

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *