8 основних Доцкер команди за почетнике

Osnovni koncepti

  • Docker pull: Koristi se za preuzimanje unapred kreiranih slika sa Docker Hub-a ili drugih repozitorijuma. Ne zahteva sopstvenu konfiguraciju.
  • Docker run: Pokreće novi kontejner na osnovu određene slike. Omogućava opcije za pokretanje u pozadini ili neprekidan rad kontejnera.
  • Docker ps: Prikazuje listu Docker kontejnera i njihove detalje, uključujući ID kontejnera, sliku, vreme kreiranja, status i dodeljene portove.

Docker kontejneri enkapsuliraju konfiguracije aplikacija u jedinice koje mogu besprekorno funkcionisati u različitim okruženjima.

Docker nudi veliki broj komandi za izvođenje različitih operacija. Ove komande omogućavaju lako kreiranje, pokretanje, zaustavljanje, brisanje i upravljanje Docker kontejnerima.

1. Docker Pull

Komanda docker pull se koristi za preuzimanje Docker slika iz repozitorijuma. Docker Hub je bogat unapred pripremljenim slikama koje možete odmah koristiti, bez potrebe za sopstvenim podešavanjima.

Ove slike služe kao šabloni za kreiranje Docker kontejnera za vaše aplikacije. Takođe, komanda docker pull omogućava preuzimanje slika iz privatnih ili lokalnih repozitorijuma.

Slike se mogu preuzeti u terminal koristeći sledeću sintaksu:

docker pull [OPCIJE] NAZIV[:TAG|@DIGEST]

Ukoliko ne navedete određeni tag (verziju) slike, Docker će preuzeti sliku sa podrazumevanim tagom. Na primer, da biste preuzeli Ubuntu sliku, koristite:

docker pull ubuntu

Nakon uspešnog izvršavanja komande, videćete rezultat sličan sledećem:

Da biste proverili da li je slika uspešno preuzeta, upotrebite komandu:

docker images

Ova komanda će prikazati detalje o slici, kao što je prikazano na sledećem primeru:

Moguće je preuzeti više slika odjednom koristeći sintaksu:

docker image pull --all-tags ubuntu

Komanda docker image pull --help prikazuje sve dostupne opcije za preuzimanje slika.

2. Docker Run

Komanda docker run se koristi za pokretanje novog Docker kontejnera na osnovu postojeće slike. Kontejner je, u suštini, pokrenuta instanca slike. Kontejneri su ključni za izvršavanje vašeg koda i omogućavanje funkcionalnosti aplikacije.

Sintaksa za pokretanje kontejnera je:

docker run [OPCIJE] SLIKA [KOMANDA] [ARGUMENTI...]

Za pokretanje kontejnera u pozadini, možete koristiti opciju -d. Pokušajte pokrenuti Ubuntu sliku u pozadinskom režimu:

docker run -d ubuntu:latest

U terminalu će se prikazati identifikacioni kod koji potvrđuje da je kontejner uspešno pokrenut, npr:

8faa77f621f33473af6992c94a9e2d97c12b5c1d11a1c44897344ee862eec7e1

Uobičajeno, kontejneri rade kratko, a zatim se zaustave. Da bi kontejner radio neprekidno, koristite opciju -t ili -ti.

docker run -d -t ubuntu:latest

Možete proveriti pokrenute kontejnera koristeći komandu docker ps. Trebalo bi da vidite da je Ubuntu kontejner pokrenut. Takođe, možete pogledati praktičan vodič o tome kako pokrenuti Ubuntu kao Docker kontejner.

Dostupne su brojne opcije za imenovanje kontejnera, dodavanje volumena (direktorijuma) i kreiranje portova. Manji kontejneri su generalno brži od većih. Smanjenje veličine slika se može postići korišćenjem alpinske slike ili na druge načine.

Za više informacija o opcijama pokretanja, koristite komandu docker run --help.

3. Docker ps

Komanda docker ps služi za prikaz liste svih Docker kontejnera koji su pokrenuti na vašem sistemu. Prikazuje ID kontejnera, sliku na kojoj je zasnovan, vreme kreiranja i trenutni status. Takođe, prikazuje status kontejnera i portove koji su mu dodeljeni.

Sintaksa je:

docker ps [OPCIJE]

Kontejnere je moguće filtrirati i prikazivati u različitim formatima koristeći dostupne opcije. Za prikaz svih opcija, upotrebite komandu docker ps --help.

Na primer, možete prikazati listu kontejnera u tihom režimu koristeći opciju --quiet ili koristiti opciju --format za prikaz detalja u određenom formatu. Takođe, opcije --latest i --size (ili -s) mogu se koristiti za prikaz najnovijih kontejnera ili njihove veličine.

4. Docker Stop

Komanda docker stop služi za zaustavljanje jednog ili više pokrenutih kontejnera. Ovo je korisno ukoliko kontejner nije u upotrebi ili je potrebno ažuriranje.

Sintaksa je sledeća:

docker stop [OPCIJE] KONTEJNER [KONTEJNER...]

Da biste zaustavili Ubuntu kontejner, koristite njegov ID:

docker stop 45404fe7b36e

U terminalu će se prikazati ID zaustavljenog kontejnera. Da biste potvrdili zaustavljanje, upotrebite komandu docker ps. Videćete da Ubuntu kontejner više nije na listi pokrenutih kontejnera.

Možete zaustaviti više kontejnera u isto vreme koristeći komandu:

docker stop 90148165353a 5f0de5ef4b2b

Za prikaz opcija komande docker stop, koristite docker stop --help.

5. Docker Start

Korišćenjem komande docker start možete ponovo pokrenuti zaustavljene kontejnere:

docker start [OPCIJE] KONTEJNER [KONTEJNER...]

Na primer, ponovo pokrenite zaustavljeni Ubuntu kontejner:

docker start 45404fe7b36e

Sada možete videti ovaj kontejner na listi pokrenutih kontejnera, kao što je prikazano na sledećoj slici:

Da biste videli opcije komande, koristite docker start --help.

6. Docker Logs

Komanda docker logs vam omogućava da preuzmete logove generisane od strane pokrenutog kontejnera. Logovi su korisni za otklanjanje grešaka, praćenje i razumevanje ponašanja kontejnera. Sintaksa komande je:

docker logs [OPCIJE] KONTEJNER

Opcije omogućavaju preuzimanje određenih informacija iz kontejnera, kao što su izlazni strim ili određene vremenske oznake. Takođe, možete filtrirati logove na osnovu dodatnih atributa, kao što su promenljive okruženja.

Na primer, da biste preuzeli logove sa vremenskim oznakama za Ubuntu kontejner, koristite njegov ID:

docker logs --timestamps 45404fe7b36e

Izlaz će uključivati vremenske oznake:

2023-08-21T13:10:31.979307895Z root@45404fe7b36e:/# 2023-08-21T13:51:27.442944740Z root@45404fe7b36e:/#

Da biste videli ostale opcije komande, upotrebite docker logs --help.

7. Docker Exec

Komanda docker exec omogućava izvršavanje komandi unutar pokrenutog kontejnera. Ova komanda vam daje mogućnost interakcije sa procesom kontejnera. Pristupom ljusci unutar kontejnera možete rešavati probleme i upravljati svojim kontejnerima.

Sintaksa je:

docker exec [OPCIJE] KONTEJNER KOMANDA [ARGUMENTI...]

Pre pokretanja docker exec u Ubuntu kontejneru, uverite se da je kontejner pokrenut. Ako nije, možete ga pokrenuti ponovo koristeći docker start [KONTEJNER].

Zatim, pokrenite komandu na sledeći način:

docker exec -it 45404fe7b36 /bin/bash

Docker će otvoriti ljusku unutar kontejnera:

root@45404fe7b36e:/#

Iz ljuske možete izvršavati druge komande unutar kontejnera.

8. Docker Push

Docker push je jedna od najvažnijih Docker komandi. Koristi se za slanje (push) slika sa lokalnog sistema u onlajn Docker repozitorijum.

Jedna od prednosti čuvanja slika na Docker Hub-u je to što im možete pristupiti sa bilo koje lokacije. Repozitorijum vam takođe omogućava deljenje slika sa drugima i saradnju na projektima.

Sintaksa za izvršavanje ove komande je:

docker push [OPCIJE] NAZIV[:TAG]

Da biste demonstrirali njenu upotrebu, pokušajte da pošaljete (push) Ubuntu sliku na Docker Hub. Da biste to uradili, morate imati registrovan nalog na Docker Hub-u.

Prvo se prijavite na svoj Docker engine u terminalu. Zatim, promenite ime slike koju želite da pošaljete, dodajući ime koje se odnosi na vaš online repozitorijum. Zatim možete poslati preimenovanu sliku na Docker Hub. Možete naučiti praktične korake za to tako što ćete hostovati aplikaciju u Docker repozitorijumu.

Napredne Docker komande

Docker uključuje naprednije koncepte kao što su Docker Compose i Docker Swarm. Ovi alati olakšavaju upravljanje konfiguracijom kompleksnih aplikacija koje koriste veći broj kontejnera. Istražite komande povezane sa ovim alatima da biste unapredili svoje Docker veštine.