Docker – kolejna sexy technologia pożądana przez wiele osób. Wykorzystywany jest do deploymentu oraz developingu aplikacji. Docker jest kontenerem bazującym na jądrze Linuxa (kontenery linuksowe – lxc). Jest on bardzo lekki i przyspiesza proces wytwarzania oprogramowania.
Aby zacząć swoją przygodę z Docker’em, należy pobrać pliki z oficjalnej strony (artykuł dotyczy wersji na Windows):
Po pomyślnej instalacji możemy uruchomić terminal Dockerowy (fajny wieloryb :P):
Polecenia poprzedzamy słowem “docker“.
docker polecenie argument
Obraz (ang. image) jest to czysta kopia systemu Linux z najważniejszymi elementami, aby uruchomić dane środowisko. Marek Goldmann określił obraz jako klasę, natomiast kontener jest instancją klasy (obrazu). Obrazy przechowywane są w Docker Hub, znajdują się tam oficjalne repozytoria z obrazami (coś na wzór Github’a). Na górze strony znajduje się wyszukiwarka. Wyszukujemy interesujący nas obraz. Dla przykładu wpiszmy “java“. Po wpisaniu ukaże nam się strona z dostępnymi tagami. Tag określa nazwę wersji.
Aby pobrać obraz należy wydać polecenie:
docker pull nazwa_obrazu
W naszym przypadku chcemy uruchomić polecenie java -version (do tego wystarczy nam java 8).
Wydajemy polecenie docker pull java:latest, wtedy zostanie pobrany obraz z docker hub.
Pobranie obrazu:
docker pull nazwa_obrazu
docker pull nazwa_obrazu:tag
Polecenia poniżej są równoważne:
docker pull java:latest
docker pull java
Dla naszego przykładu pobieramy ostatni obraz javy:
docker pull java:latest
Po pobraniu obrazu powinien on być widoczny na liście obrazów. Lista naszych obrazów:
docker images
Widzimy, że nasz obraz jest dostępny z tagiem “latest“. Pora na uruchomienie obrazu.
Aby uruchomić obraz należy wydać polecenie:
docker run -flagi nazwa_obrazu proces_który_chcemy_uruchomić
Najczęściej stosowane flagi to:
- -it – tryb interaktywny (możemy np: korzystać z bash’a)
- -d – tryb deamon, działa na zasadzie usługi
- –rm – usuwa kontener po wyłączeniu (tylko kontener, nie obraz!)
Uruchamiamy nasz kontener w trybie interaktywnym:
docker run -it --rm java:latest bash
Uruchomiliśmy lekki kontener Linuxowy z wszystkim minimalnymi składkami, żeby uruchomić jave. Aby sprawdzić czy na pewno mamy zainstalowaną jave wystarczy podać polecenie:
java -version
Jak widzicie na naszym kontenerze jest najnowsza Java.
Aby wyjść z kontenera wydajemy polecenie exit.
Uruchamiamy kontener po raz kolejny:
ID kontenera jest inne, dzięki czemu mamy pewność, że pracujemy na świeżym kontenerze.
Aby usunąć obraz wydajemy polecenie:
docker rmi tag_lub_id_obrazu
Ostatnim poleceniem, które zwraca listę aktualnie działających kontenerów jest:
docker ps
W następnym artykule napiszę jak tworzyć własny obraz Dockerfile, który przyspieszy deployment.