Otu esi etinye ma jiri Docker na Ubuntu 20.04


Docker bụ ikpo okwu mepere emepe nke kachasị ewu ewu maka ndị mmepe na ndị na-ahụ maka sistemu iji wuo, mee ma kesaa ngwa na arịa. Njikere (iji akpa na-ebuga ngwa) na-ewu ewu n'ihi na arịa na-agbanwe agbanwe, dị fechaa, enwere ike ibugharị, nke na-adịghị ejikọta ya, nke nwere ike ibugharị, na nchekwa karịa.

Edemede a bụ ezigbo mmalite maka ndị mbido ka ha mụta ka esi etinye na iji Docker na sistemụ Linux Ubuntu 20.04 nwere iwu ụfọdụ. Maka ntuziaka a, anyị ga-etinye Docker Community Edition (CE).

  • Nwụnye nke sava Ubuntu 20.04.
  • Onye ọrụ nwere ihe ùgwù ịme iwu sudo.

Wụnye Docker na Ubuntu 20.04

Iji jiri ụdị Docker kachasị ọhụrụ, anyị ga-etinye ya na ebe nchekwa Docker gọọmentị. Yabụ, bido site na ịgbakwunye igodo GPG maka ebe nchekwa Docker gọọmentị na sistemụ gị, mgbe nke ahụ gachara gbakwunye nhazi ebe nchekwa na isi iyi APT yana iwu ndị a.

$ 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"

Ugbu a melite cache ngwugwu APT ka ịtinye ngwugwu Docker ọhụrụ na sistemụ site na iji iwu a.

$ sudo apt update

Na-esote, wụnye ngwugwu Docker dị ka egosiri.

$ sudo apt install docker-ce

N'oge usoro nrụnye ngwugwu Docker, ihe nrụnye ngwugwu na-akpalite sistemu (sistemu na njikwa ọrụ) ka ịmalite na-akpaghị aka ma mee ka ọrụ docker rụọ ọrụ. Iji iwu ndị a iji gosi na ọrụ docker na-arụ ọrụ ma na-enyere ya aka ibido ozugbo na mmalite sistemụ. Ọzọkwa, lelee ọkwa ya:

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

Enwere ọtụtụ iwu systemctl ndị ọzọ iji jikwaa ma jikwaa ọrụ docker nke gụnyere ihe ndị a:

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

Iji lelee ụdị Docker CE arụnyere na sistemụ gị, mee iwu a:

$ docker version

Ị nwere ike ịlele iwu ojiji docker dị site na iji iwu docker na-enweghị nhọrọ ma ọ bụ arụmụka ọ bụla:

 
$ docker

Jikwaa Docker dị ka onye na-abụghị mgbọrọgwụ nwere sudo Command

Site na ndabara, Docker daemon na-ejikọta na oghere UNIX (kama ọdụ ụgbọ mmiri TCP) nke mgbọrọgwụ onye ọrụ nwere. Ya mere Docker daemon na-agba ọsọ mgbe niile dị ka onye ọrụ mgbọrọgwụ na iji mee iwu docker, ịkwesịrị iji sudo.

Na mgbakwunye, n'oge nrụnye ngwugwu Docker, a na-emepụta otu akpọrọ docker. Mgbe Docker daemon malitere, ọ na-emepụta oghere UNIX nke ndị otu docker na-enweta (nke na-enye ohere dị ka onye ọrụ mgbọrọgwụ).

Iji mee iwu docker na-enweghị sudo, gbakwunye ndị ọrụ niile na-abụghị mgbọrọgwụ nke kwesịrị ịnweta docker, n'ime otu docker dị ka ndị a. N'ihe atụ a, iwu ahụ na-agbakwunye onye abanyela ugbu a na onye ọrụ ($USER) ma ọ bụ aha njirimara na otu docker:

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

Ka ịgbalite mgbanwe na otu, gbaa iwu a:

$ newgrp docker 
$ groups

Na-esote, nyochaa na ị nwere ike ịme iwu docker na-enweghị sudo. Iwu na-esonụ na-ebudata onyonyo ule wee tinye ya n'ime akpa. Ozugbo akpa ahụ na-agba ọsọ, ọ na-ebipụta ozi ozi wee pụọ. Nke a bụkwa ụzọ ọzọ ị ga-esi lelee ma nrụnye gị ọ na-arụ ọrụ nke ọma.

$ docker run hello-world

Na-arụ ọrụ na Docker Images

Ihe onyonyo Docker bụ faịlụ ndebiri naanị ọgụgụ nwere ntuziaka maka imepụta akpa Docker. Ị nwere ike ịmepụta foto omenala gị ma ọ bụ naanị ị nwere ike iji nke ndị ọzọ mepụtara ma bipụta ya na Docker Hub, ọbá akwụkwọ kachasị n'ụwa na obodo maka ihe oyiyi akpa.

Ị nwere ike ịchọ ihe oyiyi centos na Docker Hub site na iji iwu a:

$ docker search centos 

Ka ibudata onyonyo na mpaghara, jiri iwu ịdọrọ. Ọmụmaatụ a na-egosi otu esi ebudata onyonyo centos gọọmentị.

$ docker pull centos

Ozugbo nbudata nbudata ahụ, ị nwere ike depụta onyonyo dị na sistemụ mpaghara gị.

$ docker images

Ọ bụrụ na ịchọghị ihe onyonyo, ị nwere ike wepu ya na sistemụ gị.

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

Na-agba ọsọ na ijikwa arịa Docker

Akpa Docker bụ usoro na-agba ọsọ na Linux ma kesaa kernel nke igwe nnabata na arịa ndị ọzọ. Banyere onyonyo Docker, akpa bụ naanị onyonyo na-agba ọsọ.

Iji malite akpa dabere na ihe oyiyi centos ọhụrụ gị, mee iwu a ebe centos bụ aha onyonyo mpaghara yana \cat /etc/centos-release bụ iwu ịgba ọsọ n'ime akpa:

$ docker run centos cat /etc/centos-release

Akpa na-arụ usoro pụrụ iche nke dịpụrụ adịpụ n'ihi na o nwere nke ya: usoro faịlụ, netwọk, na osisi usoro dịpụrụ adịpụ na onye ọbịa. Rịba ama na ị nwere ike iji ID akpa, ID-prefix, ma ọ bụ aha megharịa akpa dị ka egosiri n'okpuru. Usoro akpa dị n'elu na-apụ mgbe iwu ahụ gachara.

Ka ịdepụta arịa Docker, jiri iwu docker ps dị ka ndị a. Jiri ọkọlọtọ -l gosi akpa emepụtara ọhụrụ na steeti niile:

$ docker ps
OR
$ docker ps -l

Iji gosi akpa niile gụnyere ndị pụọ, jiri ọkọlọtọ -a.

$ docker ps -a

Ị nwekwara ike ịmalite akpa site na iji ID akpa ya mgbe ọ pụtachara. Dịka ọmụmaatụ, na iwu gara aga, NJ akpa anyị bụ 94c35e616b91. Anyị nwere ike ịmalite akpa ahụ dị ka egosiri (rịba ama na ọ ga-agba ọsọ iwu wee pụọ):

$ docker start 94c35e616b91

Ka ịkwụsị akpa na-agba ọsọ site na iji ID ya, jiri iwu nkwụsị dịka egosiri.

$ docker stop 94c35e616b91

Docker na-enyekwa gị ohere ikenye aha n'ime akpa site na iji - aha nhọrọ mgbe ị na-agba ya.

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

Ugbu a ị nwere ike iji aha akpa jikwaa (mmalite, kwụsị, stats, wepụ, wdg) akpa ahụ:

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

Na-agba ọsọ nnọkọ mmekọrịta n'ime akpa Docker

Iji malite nnọkọ shei mmekọrịta n'ime akpa iji mee ka ị nwee ike ịme iwu n'ime akpa ahụ, mee iwu a:

$ docker run --name my_test -it centos

N'iwu dị n'elu, ndị na-agbanwe -ya na-agwa Docker ka ọ kenye pseudo-TTY ejikọrọ na stdin akpa ahụ wee mepụta shea bash na-emekọrịta ihe n'ime akpa ahụ.

Ị nwere ike ịpụ apụ site n'inye iwu ọpụpụ dịka egosiri.

# exit

Ọ bụrụ na-amasị gị ịghara ịpụ apụ, ị nwere ike ịwepụ n'ime akpa wee hapụ ya ka ọ na-agba ọsọ. Iji mee nke ahụ, jiri usoro igodo CTRL+p wee CTRL+q usoro.

Ị nwere ike jikọọ azụ na akpa ahụ site na iji iwu mgbakwunye nke ga-etinye ntinye ọkọlọtọ mpaghara, mmepụta, na iyi njehie na akpa na-agba ọsọ:

$ docker attach my_test

E wezụga nke ahụ, ịnwere ike ibido akpa na ọnọdụ kewapụrụ site na iji ọkọlọtọ -d. Wee jiri iwu mgbakwunye tinye ntinye, mmepụta na iyi njehie nke ọdụ ọdụ gị na akpa na-agba ọsọ:

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

N'ikpeazụ ma ọ dịghị ihe ọzọ, ị nwere ike ịkwụsị akpa na-agba ọsọ site na nnọkọ ndị ọbịa site na ịme iwu a:

$ docker kill my_test

Ọ gwụla! N'ime ntuziaka a, anyị ekpuchila otu esi etinye ma jiri Docker CE na Ubuntu 20.04 Linux. Ọ bụrụ na ị nwere ajụjụ ọ bụla, jiri akwụkwọ nzaghachi n'okpuru jụọ anyị.