Docker - Gonz8/RSO-16L GitHub Wiki
W razie jakichkolwiek pytań, problemów albo jakbyście mieli za dużo ciasta i potrzebowali pomocy w jego zjedzeniu: [email protected]
-
Logowanie z uprawnieniami administratora (sudo).
-
Sprawdzenie, czy macie zainstalowany pakiet curl:
$ which curl
jeśli nie:
$ sudo apt-get update
$ sudo apt-get install curl
-
Instalacja pakietu Docker
$ curl -fsSL https://get.docker.com/ | sh
-
Sprawdzenie poprawności instalacji
$ docker run hello-world
Poprawna odpowiedź Dockera:
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
03f4658f8b78: Pull complete
a3ed95caeb02: Pull complete
Digest: sha256:8be990ef2aeb16dbcb9271ddfe2610fa6658d13f6dfb8bc72074cc1ca36966a7
Status: Downloaded newer image for hello-world:latest
Hello from Docker.
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker Hub account:
https://hub.docker.com
For more examples and ideas, visit:
https://docs.docker.com/userguide/
Po każdorazowej aktualizacji kodu na GitHub, będę aktualizowała obraz Dockera z naszą aplikacją. Obraz będziecie pobierać z mojego konta Docker Hub za pomocą komendy:
$ docker pull mead/rso-16l
Listę obrazów dostępnych w lokalnym repozytorium można wyświetlić za pomocą komendy :
$ docker images
Wyświetli się wam wtedy lista podobna do tej:
REPOSITORY | TAG | IMAGE ID | CREATED | SIZE |
---|---|---|---|---|
author/ubuntu | v2 | adbc62b82a11 | 19 seconds ago | 725.1 MB |
ubuntu | latest | b72889fa879c | 11 days ago | 188 MB |
training/webapp | latest | 6fae60ef3446 | 11 months ago | 348.8 MB |
Usunięcie obrazu z lokalnego repozytorium:
$ docker rmi <id obrazu>
Usunięcie wszystkich obrazów z lokalnego repozytorium:
$ docker rmi $ (docker images)
Uruchomienie kontenera z nasza aplikacją (na podstawie obrazu pobranego z mojego konta Docker Hub):
$ docker run mead/rso-16l
Można jednak uruchomić kontener, który wykonuje zadania w tle dodając flagę -d.
$ docker run -d mead/rso-16l
Wyświelenie ostatnio uruchomiongo kontenera:
$ docker ps -l
Wyświelenie wszystkich kontenerów:
$ docker ps -a
Kontener, po wykonaniu procesu, który ma za zadanie wykonać, zatrzymuje się. Czasem jednak kontener ma za zadanie wykonać serię zadań lub wykonywać procesy w pętli. Przerwanie pracy takiego kontenera następuje po komendzie:
$ docker stop <id lub nazwa kontenera>
Usunięcie kontenera:
$ docker rm <id lub nazwa kontenera>
Usunięcie wszystkich kontenerów:
$ docker rm $ ( docker ps -a)
Wydaje mi się, że ta instrukcja pokrywa wszystkie podstawowe zastosowania Dockera, jakich będziemy potrzebować przy projekcie. Jeśli coś jeszcze przyjdzie mi do głowy lub zauważycie że czegoś brakuje i nie wiecie jak zrobić to ją uzupełnię. Jakbyście chcieli poczytać więcej o Dockerze, podrzucam poniższe linki do dokumentacji Dockera oraz blogów, na których wyjaśnione są w przystępny sposób podstawowe założenia tego narzędzia.
https://docs.docker.com/
http://blogersii.pl/2016/02/03/docker-wprowadzenie/
http://www.ratioweb.pl/pl/blog/toolkit/przygody-z-dockerem-1-instalacja-i-podstawy