Kako instalirati i koristiti Docker na Ubuntu 20.04


Docker je najpopularnija platforma otvorenog koda za programere i administratore sustava za izradu, pokretanje i dijeljenje aplikacija sa spremnicima. Kontejnerizacija (upotreba spremnika za implementaciju aplikacija) postaje popularna jer su spremnici fleksibilni, lagani, prenosivi, labavo povezani, skalabilni i sigurniji.

Ovaj je članak dobra polazna točka za početnike da nauče kako instalirati i koristiti Docker na Ubuntu 20.04 Linux sustavu s nekim osnovnim naredbama. Za ovaj vodič instalirat ćemo Docker Community Edition (CE).

Preduvjeti:

  • Instalacija poslužitelja Ubuntu 20.04.
  • Korisnik s privilegijama za pokretanje naredbe sudo.

Instaliranje Dockera na Ubuntu 20.04

Kako bismo koristili najnoviju verziju Dockera, instalirat ćemo je iz službenog Docker repozitorija. Dakle, započnite s dodavanjem GPG ključa za službeno Docker spremište u vaš sustav, nakon toga dodajte konfiguraciju spremišta u APT izvor s sljedeće naredbe.

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

Sada ažurirajte predmemoriju APT paketa kako biste uključili nove Docker pakete u sustav pomoću sljedeće naredbe.

sudo apt update

Zatim instalirajte paket Docker kao što je prikazano.

sudo apt install docker-ce

Tijekom postupka instalacije paketa Docker, instalacijski program paketa pokreće systemd (upravitelj sustava i usluga) da automatski pokrene i omogući uslugu dockera. Pomoću sljedećih naredbi potvrdite da je docker usluga aktivna i da je omogućeno automatsko pokretanje pri pokretanju sustava. Također provjerite njegov status:

sudo systemctl is-active docker
sudo systemctl is-enabled docker
sudo systemctl status docker

Postoji nekoliko drugih systemctl naredbi za upravljanje i kontrolu docker usluge koje uključuju sljedeće:

sudo systemctl stop docker			#stop the docker service
sudo systemctl start docker			#start the docker service
sudo systemctl  restart docker		#restart the docker service

Za provjeru verzije Docker CE instalirane na vašem sustavu, pokrenite sljedeću naredbu:

docker version

Dostupne naredbe za korištenje dockera možete vidjeti pokretanjem naredbe docker bez ikakvih opcija ili argumenata:

 
docker

Upravljajte Dockerom kao korisnik koji nije root pomoću naredbe sudo

Prema zadanim postavkama demon Docker veže se na UNIX utičnicu (umjesto TCP porta) koja je u vlasništvu korijenskog korisnika. Stoga Docker demon uvijek radi kao root korisnik i da biste pokrenuli naredbu docker, morate koristiti sudo.

Osim toga, tijekom instalacije paketa Docker stvara se grupa pod nazivom docker. Kada se demon Docker pokrene, stvara UNIX utičnicu kojoj mogu pristupiti članovi grupe docker (koja daje privilegije jednake root korisniku).

Za pokretanje naredbe docker bez sudo, dodajte sve nekorijenske korisnike koji bi trebali pristupiti dockeru u grupu docker kako slijedi. U ovom primjeru, naredba dodaje trenutno prijavljenog korisnika ($USER) ili korisničko ime u docker grupu:

sudo usermod -aG docker $USER
OR
sudo usermod -aG docker username

Da biste aktivirali promjene grupa, pokrenite sljedeću naredbu:

newgrp docker 
groups

Zatim provjerite možete li pokrenuti docker naredbe bez sudo. Sljedeća naredba preuzima testnu sliku i pokreće je u spremniku. Nakon što se spremnik pokrene, ispisuje informativnu poruku i izlazi. Ovo je također još jedan način da provjerite radi li vaša instalacija dobro.

docker run hello-world

Rad s Docker slikama

Docker slika je datoteka predloška samo za čitanje s uputama za stvaranje Docker spremnika. Možete izraditi svoje prilagođene slike ili možete koristiti samo one koje su izradili drugi i objavili u Docker Hubu, najvećoj svjetskoj knjižnici i zajednici za slike spremnika.

Možete tražiti centos sliku u Docker Hub-u pomoću sljedeće naredbe:

docker search centos 

Za lokalno preuzimanje slike upotrijebite naredbu povlačenja. Ovaj primjer pokazuje kako preuzeti službenu sliku centos.

docker pull centos

Nakon što je preuzimanje završeno, možete ispisati dostupne slike na vašem lokalnom sustavu.

docker images

Ako vam slika više nije potrebna, možete je ukloniti iz svog sustava.

docker rmi centos
OR
docker rmi centos:latest    #where latest is the tag

Pokretanje i upravljanje Docker kontejnerima

Docker spremnik je proces koji se izvodi izvorno na Linuxu i dijeli kernel glavnog računala s drugim spremnicima. Što se tiče Docker slike, spremnik je samo pokrenuta slika.

Za pokretanje spremnika na temelju vaše nove centos slike, pokrenite sljedeću naredbu gdje je “centos” lokalni naziv slike i “cat /etc/centos-release ” je naredba koju treba pokrenuti u spremniku:

docker run centos cat /etc/centos-release

Spremnik pokreće diskretni proces koji je izoliran na način da ima vlastiti: sustav datoteka, umrežavanje i izolirano stablo procesa odvojeno od glavnog računala. Imajte na umu da možete manipulirati spremnikom koristeći ID, ID-prefiks ili naziv spremnika kao što je prikazano u nastavku. Gornji proces spremnika izlazi nakon pokretanja naredbe.

Za popis Docker spremnika upotrijebite naredbu docker ps kako slijedi. Upotrijebite oznaku -l za prikaz zadnjeg stvorenog spremnika u svim stanjima:

docker ps
OR
docker ps -l

Za prikaz svih spremnika, uključujući one koji su izašli, upotrijebite oznaku -a.

docker ps -a

Također možete pokrenuti spremnik koristeći njegov ID spremnika nakon što izađe. Na primjer, u prethodnoj naredbi ID našeg spremnika je 94c35e616b91. Možemo pokrenuti spremnik kao što je prikazano (imajte na umu da će pokrenuti naredbu i izaći):

docker start 94c35e616b91

Za zaustavljanje spremnika koji radi koristeći njegov ID, koristite naredbu stop kao što je prikazano.

docker stop 94c35e616b91

Docker također vam omogućuje da dodijelite naziv spremniku pomoću opcije --name kada ga pokrećete.

docker run --name my_test centos cat /etc/centos-release
docker ps -l

Sada možete koristiti naziv spremnika za upravljanje (pokretanje, zaustavljanje, statistika, uklanjanje itd.) spremnika:

docker stop my_test
docker start my_test
docker stats my_test
docker rm my_test

Pokretanje interaktivne sesije u Docker spremnik

Da biste pokrenuli interaktivnu sesiju ljuske u spremniku kako biste omogućili pokretanje naredbi unutar spremnika, pokrenite sljedeću naredbu:

docker run --name my_test -it centos

U gornjoj naredbi, prekidači -it govore Dockeru da dodijeli pseudo-TTY spojen na stdin spremnika i tako stvara interaktivnu bash ljusku u spremniku.

Možete izaći izdavanjem naredbe za izlaz kao što je prikazano.

exit

Ako ne želite izaći, možete se odvojiti od spremnika i ostaviti ga da radi. Da biste to učinili, upotrijebite niz tipki CTRL+p, a zatim CTRL+q.

Možete se ponovno povezati sa spremnikom pomoću naredbe attach koja će priložiti lokalne standardne ulazne, izlazne i tokove pogrešaka spremniku koji radi:

docker attach my_test

Osim toga, možete pokrenuti spremnik u odvojenom načinu rada pomoću oznake -d. Zatim upotrijebite naredbu attach da priložite standardni ulaz, izlaz i tokove pogrešaka vašeg terminala na spremnik koji radi:

docker run --name my_test -d -it centos
docker attach my_test

Posljednje, ali ne manje važno, možete zaustaviti spremnik koji radi iz sesije glavnog računala pokretanjem sljedeće naredbe:

docker kill my_test

To je sve! U ovom vodiču opisali smo kako instalirati i koristiti Docker CE u Ubuntu 20.04 Linuxu. Ako imate bilo kakvih pitanja, upotrijebite obrazac za povratne informacije u nastavku da biste nam ih postavili.