Docker ir populāra konteinerizācijas programmatūra. Konteineri ir standarta programmatūras vienība, kas pako kodu un visas tā atkarības, lai lietojumprogrammu varētu ātri un droši palaist dažādās operētājsistēmās un datorsistēmās.
Tehniskajā terminoloģijā konteiners ir darbojošs process, kas ir izolēts no citiem procesiem un kam ir piekļuve datora resursiem. Tālāk aplūkosim Docker instalēšanu Debian 11 sistēmā un pirmās lietojumprogrammas palaišanu.
Ir divi veidi, kā instalēt, izmantojot standarta Debian repozitorijus vai oficiālo Docker repozitoriju. Debian repozitorijos nav jaunākās versijas, tāpēc aplūkosim instalēšanu no oficiālā Docker repozitorija.
Pirms repozitorija pievienošanas ir jāatjaunina pakotņu saraksts, izpildot komandu:
$ sudo apt update
Uzstādiet arī papildu paketes, kas nepieciešamas darbam ar attālinātajiem repozitorijiem. Lai instalētu šīs paketes, izpildiet komandu:
$ sudo apt -y install ca-certificates curl gnupg lsb-release
Tālāk lejupielādējiet un pievienojiet PGP atslēgu no repozitorija. Lai to izdarītu, izpildiet komandu:
$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Lai pievienotu repozitoriju, ir jāizpilda komanda: :
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Lai instalētu pakotni, vispirms ir jāatjaunina pakotņu saraksti, lai sistēmā parādītos jaunais repozitorijs. Lai to izdarītu, vienkārši izpildiet komandu: :
$ sudo apt update
Visbeidzot, varat instalēt papildu paketes. Instalēšana tiek veikta, izmantojot komandu:
$ sudo apt -y install docker-ce docker-ce-cli containerd.io
Vārds ce
paketes nosaukumā docker-ce
apzīmē kopienu
, kas nozīmē, ka tiks instalēta bezmaksas versija (jeb kopienas versija). Tagad jūs zināt, kā instalēt docker debian.
Pēc instalēšanas pēc noklusējuma tas tiks izslēgts. Lai palaistu programmu, ir jāizpilda komanda:
$ sudo systemctl start docker
Lai tā darbotos kopā ar operētājsistēmu, tā jāpievieno autoloader, izmantojot komandu:
$ sudo systemctl enable docker
Pēc noklusējuma tikai lietotājs root var izmantot un izpildīt tās komandas terminālī. Ja jebkuru komandu izpildīs parasts lietotājs, terminālī tiks parādīta šāda kļūda:
Mēģinot izveidot savienojumu ar Docker dēmona ligzdu unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json": dial unix /var/run/docker.sock: connect: permission denied
Lai komandu palaistu kā parasts lietotājs un neizmantojot sudo
komandu, lietotājs jāpievieno docker
grupai. Docker
grupa tiek izveidota automātiski instalēšanas laikā. Tomēr, ja kāda iemesla dēļ tā netiek automātiski izveidota, tā ir jāizveido manuāli, izpildot šādu komandu:
$ sudo groupadd docker
Tālāk, lai pievienotu pašreizējo lietotāju docker grupai, izpildiet:
$ sudo usermod -aG docker $USER
Mainīgais $USER
nozīmē, ka pašreizējais lietotājs, kura vārdā tiek uzsākta sesija, tiks pievienots docker
grupai. Šis mainīgais ir visās mūsdienu Linux izplatīšanās sistēmās. Ir vērts arī atzīmēt, ka docker grupa piešķir privilēģijas, kas ir līdzvērtīgas root lietotāja privilēģijām.
Pēc lietotāja pievienošanas ir nepieciešams atkārtoti pieteikties sistēmā, un tikai tad var palaist jebkuru Docker
komandu testēšanai. Kā piemērs tika palaista docker ps
komanda, kas parāda darbojošos konteineru sarakstu:
$ docker ps
Kā redzams attēlā, tā tika izpildīta bez kļūdām un parasta lietotāja vārdā.
Lai pilnībā pārbaudītu Docker, varat lejupielādēt testa attēlu no hello-world
pārbaudes nolūkos. Lai to izdarītu, ir jāizpilda:
$ docker run hello-world
Docker Run
komanda lejupielādēs programmatūras attēlu no Docker hub
tiešsaistes repozitorija, oficiālā Docker programmatūras attēlu glabāšanas reģistra, kas tiek izmantots pēc noklusējuma, un automātiski to palaidīs. Šajā piemērā tiek izvadīta frāze Hello from Docker!
, kas nozīmē, ka attēls ir veiksmīgi lejupielādēts un palaists.