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]

DOCKER – Instrukcja

1. Instalacja

  1. Logowanie z uprawnieniami administratora (sudo).

  2. Sprawdzenie, czy macie zainstalowany pakiet curl:

      $ which curl  
    

jeśli nie:

     $ sudo apt-get update    
     $ sudo apt-get install curl          
  1. Instalacja pakietu Docker

      $ curl -fsSL https://get.docker.com/ | sh                           
    
  2. 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/                     

2. Praca z obrazem

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)                                         

3. Praca z kontenerem

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)                                        

4. Podsumowanie

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

⚠️ **GitHub.com Fallback** ⚠️