Nov 13, 2023

docker restart

 Docker komanda docker restart se koristi za ponovno pokretanje zaustavljenog kontejnera. Ova komanda omogućava brzo ponovno pokretanje kontejnera bez potrebe za ponovnim pokretanjem Docker image-a.

Osnovna upotreba:

docker restart <ime_ili_ID_kontejnera>

Ova komanda šalje signal za ponovno pokretanje određenom kontejneru. Možete koristiti ili ime ili ID kontejnera.

Primer:

docker restart moj_kontejner

Ovaj primer ponovno pokreće kontejner sa imenom "moj_kontejner".

Više kontejnera odjednom:

Ako želite ponovno pokrenuti više kontejnera odjednom, navedite njihova imena ili ID-jeve odvojene razmakom.

docker restart kontejner1 kontejner2

Primer sa koriscenjem ID-a kontejnera:

docker restart 123abc456def

Ovaj primer ponovno pokreće kontejner sa ID-om "123abc456def".

Ponovno pokretanje kontejnera često se koristi kada je potrebno primeniti izmene u konfiguraciji ili kada je došlo do nekog problema u radu kontejnera, a želite ga brzo i jednostavno ponovo pokrenuti.

Treba napomenuti da docker restart ne menja konfiguraciju ili postavke kontejnera. Ako želite primeniti izmene u konfiguraciji, trebali biste zaustaviti kontejner, primeniti izmene i zatim ga ponovo pokrenuti.

docker stop

 Docker komanda docker stop koristi se za zaustavljanje pokrenutih Docker kontejnera. Ova komanda omogućava kontrolisano zaustavljanje kontejnera, što znači da se proces unutar kontejnera obavija i kontejner zatim prestaje sa radom.

Osnovna upotreba:

docker stop <ime_ili_ID_kontejnera>

Ova komanda šalje signal za zaustavljanje određenom kontejneru. Možete koristiti ili ime ili ID kontejnera.

Primer:

docker stop moj_kontejner

Ovaj primer zaustavlja kontejner sa imenom "moj_kontejner".

Više kontejnera odjednom:

Ako želite zaustaviti više kontejnera odjednom, navedite njihova imena ili ID-jeve odvojene razmakom.

docker stop kontejner1 kontejner2

Čekanje određenog vremena pre nego što se kontejner zaustavi:

docker stop -t 30 moj_kontejner

Ovaj primer šalje signal za zaustavljanje kontejneru "moj_kontejner", ali čeka maksimalno 30 sekundi da se proces unutar kontejnera završi pre nego što se kontejner zaustavi. Ako se proces ne završi u tom vremenskom periodu, kontejner će biti silom zaustavljen.

Primer sa koriscenjem ID-a kontejnera:

docker stop 123abc456def

Ovaj primer zaustavlja kontejner sa ID-om "123abc456def".

Više načina za zaustavljanje kontejnera:

Osim docker stop, možete koristiti i docker kill za momentalno zaustavljanje kontejnera bez čekanja na završetak procesa unutar kontejnera.

docker kill moj_kontejner

Ove komande su korisne kada želite zaustaviti pokrenute kontejnere i osloboditi resurse koje zauzimaju.

docker run

Docker komanda docker run se koristi za pokretanje kontejnera na osnovu određenog Docker image-a. Ova komanda omogućava da se kreira, pokrene i upravlja kontejnerima sa specifičnim opcijama i konfiguracijama. Evo osnovne upotrebe i nekoliko primera:

Osnovna upotreba:

docker run <opcije> <ime_image-a>

Ova komanda kreira i pokreće kontejner na osnovu navedenog Docker image-a. Kontejner se pokreće u pozadini (u režimu daemon) i izlazi iz kontejnera kada se izvrši zadatak koji je definisan u Docker image-u (npr. pokretanje servera).

Primer:

docker run -d -p 8080:80 nginx

Ovaj primer kreira i pokreće Docker kontejner na osnovu "nginx" image-a. Opcija -d pokreće kontejner u pozadinskom režimu, a opcija -p 8080:80 mapira port 8080 na port 80 unutar kontejnera.

Interaktivni režim:

docker run -it ubuntu /bin/bash

Ovaj primer pokreće interaktivni kontejner sa Ubuntu operativnim sistemom i otvara komandnu liniju (/bin/bash) unutar kontejnera. Opcija -it omogućava interaktivni režim, što znači da možete direktno komunicirati sa komandom unutar kontejnera.

Dodeljivanje imena kontejneru:

docker run --name moj_kontejner -d -p 8080:80 nginx

Ovaj primer dodaje opciju --name kako bi se dodelilo ime kontejneru (u ovom slučaju "moj_kontejner"). To omogućava lakše upravljanje i referenciranje kontejnera.

Montiranje volumena:

docker run -d -v /lokalan/path:/path/unutar/kontejnera nginx

Ovaj primer koristi opciju -v kako bi se montirao lokalni volumen unutar kontejnera. To omogućava deljenje podataka između lokalnog sistema i kontejnera.

Povezivanje s mrežom (network):

docker run --rm -it --network=host ubuntu

Ovaj primer pokreće kontejner sa Ubuntu operativnim sistemom u interaktivnom režimu, deleći mrežni namespace sa host sistemom (opcija --network=host). Opcija --rm će automatski ukloniti kontejner nakon što se zatvori interaktivna sesija.

Definisanje varijabli okoline (environment variables):

docker run -e MY_VARIABLE=my_value ubuntu

Ovaj primer pokreće kontejner sa Ubuntu operativnim sistemom i postavlja varijablu okoline MY_VARIABLE sa vrednošću my_value. Kontejner će imati pristup ovoj varijabli okoline.

Mapiranje volume-a (mounting volumes):

docker run -v /lokalan/path:/path/unutar/kontejnera ubuntu

Ovaj primer mapira lokalni direktorijum na određeni put unutar kontejnera, omogućavajući deljenje podataka između lokalnog sistema i kontejnera.

Rukovanje resursima (handling resources):

docker run -it --cpu-shares=512 ubuntu

Ovaj primer pokreće interaktivni kontejner sa Ubuntu operativnim sistemom sa definisanim ograničenjem CPU resursa (opcija --cpu-shares=512). Ovo postavlja relativni prioritet deljenja CPU resursa u odnosu na druge kontejnere.

Rad s portovima:

docker run -d -p 8080:80 nginx

Ovaj primer pokreće Nginx kontejner u pozadini (opcija -d) i mapira lokalni port 8080 na port 80 unutar kontejnera (opcija -p 8080:80).

Postavljanje radnog direktorijuma:

docker run -v $(pwd):/app -w /app ubuntu

Ovaj primer pokreće kontejner sa radnim direktorijumom postavljenim na trenutni radni direktorijum na host sistemu ($(pwd) je Bash sintaksa za trenutni direktorijum). Opcija -v montira trenutni direktorijum u /app unutar kontejnera, a opcija -w postavlja radni direktorijum na /app.

Opcije i konfiguracije koje možete koristiti sa docker run su raznovrsne i zavise od vaših potreba. Ova komanda često predstavlja ključnu tačku u radu sa Docker kontejnerima, jer vam omogućava da prilagodite pokretanje kontejnera prema specifičnim zahtevima vaših aplikacija.