W poprzednim wpisie przedstawiłem pokrótce wdrożenie usługi poprzez Docker Service, w tym wpisie chciałbym pokazać w jaki sposób można zmieniać działanie działającej już usługi.
Docker Service Nieco teorii…
Warto przypomnieć, że usługa (service) może działać w dwóch trybach Global oraz Replicated. Jeżeli chcesz zarządzać usługami tzn. zmieniać ich pracującą liczbę musisz uruchomić usługę w trybie Replicated, przy próbie zmiany liczby działających replik w trybie Global otrzymasz błąd.
Praktycznie zastosowanie
W poprzednim wpisie utworzyłem usługę helloworld, jednak działa ona jedynie w pojedynczym wystąpieniu, ale jednocześnie działa w trybie Replicated, więc możesz to zmienić. Powiedźmy, że potrzebujesz sumie 10 replik tej usługi, poniższe polecenie na to pozwala.
1 |
docker service scale helloworld=10 |
Innym poleceniem, które da takie same efekty jest poniższe.
1 |
docker service update --replicas=10 helloworld |
Sprawdź teraz jak zachowa się usługa w trybie Global.
1 2 3 |
docker service create --mode global --name helloworldglobal alpine ping docker.com docker service scale helloworldglobal=10 |
Tak jak wspomniałem wcześniej usługa w trybie Global zwróci błąd: helloworldglobal: scale can only be used with replicated mode
Mając kilka działających usług możesz sprawdzić liczbę replik konkretnej, którą wskażesz po nazwie.
1 |
docker service ls --filter name=helloworld |
W odpowiedzi otrzymasz podobne do poniższych informacje.
1 2 |
ID NAME MODE REPLICAS IMAGE 4or5mlvu3fh9 helloworld replicated 9/10 alpine |
Jeżeli w środowisku działa kilka usług w trybie Replicated możesz wykonać ich upgrade za pomocą jednego polecenia.
1 |
docker service scale helloworld1=15 helloworld2=15 |
Po wykonaniu tego polecenia możesz ponownie sprawdzić wszystkie działające usługi.
1 |
docker service ls |
1 2 3 |
ID NAME MODE REPLICAS IMAGE 4or5mlvu3fh9 helloworld1 replicated 15/15 alpine 3djirpapjfg8 helloworld2 replicated 15/15 alpine |
Podsumowanie
To tyle jeżeli chodzi o podstawy Docker Service. W kolejnym wpisie przedstawię w jaki sposób rozpocząć budowę Dockerfile, czyli instrukcję FROM.
Dziękuję Ci, za poświęcony czas na przeczytanie tego artykułu. Jeśli był on dla Ciebie przydatny, to gorąco zachęcam Cię do zapisania się na mój newsletter, jeżeli jeszcze Cię tam nie ma. Proszę Cię także o “polubienie” mojego bloga na Facebooku oraz kanału na YouTube – pomoże mi to dotrzeć do nowych odbiorców. Raz w tygodniu (niedziela punkt 17.00) otrzymasz powiadomienia o nowych artykułach / projektach zanim staną się publiczne. Możesz również pozostawić całkowicie anonimowy pomysł na wpis/nagranie.
Link do formularza tutaj: https://beitadmin.pl/pomysly
Pozostaw również komentarz lub napisz do mnie wiadomość odpisuję na każdą, jeżeli Masz jakieś pytania:).