Dockeri õpetus algajatele: põhitõed, Architektuur, konteinerid

Mis on Docker?

laevalaadija on tarkvaraarendusplatvorm virtualiseerimiseks mitmega Operasamas hostis töötavad süsteemid. See aitab taristut ja rakendusi eraldada, et tarkvara kiiresti tarnida. Erinevalt Hypervisoritest, mida kasutatakse VM-i (virtuaalsete masinate) loomiseks, toimub Dockeri virtualiseerimine süsteemi tasemel, mida nimetatakse ka Dockeri konteineriteks.

Nagu näete alloleval pildil erinevust, töötavad Dockeri konteinerid hosti peal Operasüsteemi. See aitab teil parandada tõhusust ja turvalisust. Lisaks saame samas infrastruktuuris käitada rohkem konteinereid kui virtuaalmasinaid, kuna konteinerid kasutavad vähem ressursse.

Virtualiseerimine Dockeris vs Hypervisoris
Virtualiseerimine Dockeris vs Hypervisoris

Erinevalt VM-idest, mis suudavad suhelda hosti riistvaraga (nt Etherneti adapter, et luua rohkem virtuaalseid adaptereid), töötavad Dockeri konteinerid isoleeritud keskkonnas hosti OS-i peal. Isegi kui teie peremees jookseb Windows OS-i abil saate lasta Linuxi pildid konteinerites töötada Hyper-V, mis loob automaatselt väikese VM-i, et virtualiseerida süsteemi põhipilt, antud juhul Linux.

Miks kasutada Dockerit?

  • Docker on arvutitarkvara, mida kasutatakse virtualiseerimiseks, et seda oleks mitu Operaasjade süsteemid töötab samal hostil
  • Docker on klient-serveri tüüpi rakendus, mis tähendab, et meil on kliente, kes edastavad serverile
  • Dockeri pildid on meie konteinerite lähtekood; kasutame neid ehitamiseks
  • Dockerfile'il on kahte tüüpi registreid: 1.) avalikud ja 2)eraregistrid
  • Konteinerid on Dockeri mahu organisatsioonilised üksused. Lihtsamalt öeldes on pilt mall ja konteiner on selle malli koopia. Samast pildist võib olla mitu konteinerit (koopiat).

laevalaadija Architektuur

Nüüd selles Dockeri konteineri õpetuses räägime Dockeri põhikomponentidest Dockeris ArchiStruktuur:

laevalaadija Architektuur
laevalaadija Architektuur

Dockeri mootor

Docker on klient-serveri tüüpi rakendus, mis tähendab, et meil on kliente, kes edastavad serverile. Nii et Dockeri deemon kutsus: dockerd on Dockeri mootor, mis esindab serverit. Dockeri deemonit ja kliente saab käivitada samas või kaughostis ning nad suhtlevad nii käsurea kliendi binaarfaili kui ka täieliku RESTful API deemoniga suhtlemiseks: dockerd.

Dockeri pildid

Dockeri pildid on meie konteinerite lähtekood; kasutame neid konteinerite ehitamiseks. Neil võib olla eelinstallitud tarkvara, mis kiirendab juurutamist. Need on kaasaskantavad ja saame kasutada olemasolevaid pilte või luua oma pilte.

Dockeri registrid

Docker salvestab loodud pildid registritesse. Seal on avalikud ja eraregistrid. Dockeri ettevõttel on avalik register Dockeri jaotur, kus saate pilte ka privaatselt salvestada. Docker Hubil on miljoneid pilte, mida saate kohe kasutama hakata.

Dockeri konteinerid

Konteinerid on organisatsioonilised üksused ja üks Dockeri põhikontseptsioonidest. Kui loome pildi ja hakkame seda käivitama; me jookseme konteineris. Konteinerite analoogiat kasutatakse meie konteineris töötava tarkvara kaasaskantavuse tõttu. Saame seda teisaldada ehk teisisõnu tarkvara “saata”, muuta, hallata, luua või sellest lahti saada, hävitada, täpselt nagu kaubalaevad saavad teha päris konteineritega.

Lihtsamalt öeldes on pilt mall ja konteiner on selle malli koopia. Samast pildist võib olla mitu konteinerit (koopiat).

Allpool on pilt, mis kujutab suurepäraselt erinevate komponentide vahelist koostoimet ja seda, kuidas Dockeri konteineritehnoloogia töötab.

Meil on mitu dockeri käsku docker pull, docker run.. räägime sellest pikemalt hiljem.

Kuidas installida Docker Linuxi/Ubuntu

Allpool on samm-sammult Dockeri installiprotsess Linuxis/Ubuntu:

Samm 1) Dockeri installimiseks peame kasutama Dockeri meeskonna DEB-pakette.

Selleks teatud eeltingimus Ubuntu paketid on vajalikud.

Kasutage installimiseks allolevat käsku Ubuntu pakette

$ sudo apt-get install \
apt-transport-https \
ca-certificates curl \
software-properties-common

*märk "\" pole vajalik, seda kasutatakse uue rea jaoks, soovi korral saate käsu kirjutada ilma "\" kasutamata ainult ühel real.

Step 2) Lisage sõrmejäljega ametlik Dockeri GPG-võti.

Kasutage GPG-võtme sisestamiseks allolevat Dockeri käsku

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Step 3) Järgmisena lisage Dockeri APT hoidla.

Hoidla lisamiseks kasutage allolevat Dockeri käsku

$ sudo add-apt-repository \ 
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \ 
$(lsb_release -cs) \
stable"

Teil võidakse paluda kinnitada, et soovite hoidla lisada ja GPG-võtme automaatselt hostile lisada.

Käsk lsb_release peaks sisestama faili Ubuntu teie hosti levitamise versioon.

Step 4) Pärast GPG-võtme lisamist

Värskendage APT allikaid, kasutades allolevat Dockeri käsku

$ sudo apt-get update

Nüüd saame installida Dockeri paketi ise.

Step 5) Kui APT allikad on värskendatud,

Alustage Dockeri pakettide installimist Ubuntu kasutades allolevat Dockeri käsku

$ sudo apt-get install docker-ce

Ülaltoodud käsk installib Dockeri ja muud vajalikud täiendavad paketid. Enne Dockeri versiooni 1.8.0 oli paketi nimi lxc-docker ning versioonide Docker 1.8 ja 1.13 vahel oli paketi nimi docker-engine.

MÄRKUSED: Docker jaoks Windows Vajab Windows 10 Pro või Enterprise versioon 14393 või Windows server 2016 RTM käivitamiseks

Dockeri kasutamine Dockeri põhikäskude abil

Dockeri kasutamine Dockeri põhikäskude abil toimib järgmiselt.

Kõige elementaarsem käsk, mida peame pärast Dockeri installimist käivitama, on $ docker info, nagu me varem ütlesime.

$ sudo docker info

Peaksite saama sarnase või järgmise tulemuse

Kasutage Dockerit põhiliste Dockeri käskude abil

Nagu näeme ülaltoodud Dockeri näites, on meil teave dokkeri konteinerite kohta, kui palju neid töötab, peatatakse või peatatakse ja kui palju pilte oleme alla laadinud. Nii et saame selle Dockeri käskude õpetuse esimese pildi.

$ sudo docker pull alpine

Selle käsuga käsime dockeril pilt Alpine alla laadida, et tõmmata see avalikust registrist, uusim versioon, mis on vaikimisi seatud.

*alpine on Alpine Linuxil põhinev minimaalne Dockeri pilt koos täieliku paketiindeksiga ja ainult 5 MB suurune.

Kui tahame pilti konteinerina käivitada, kasutame selles Dockeri juhendis järgmist käsku.

$ sudo docker run -i -t alpine /bin/bash

Kui käivitame käsu, saadetakse meid otse alpi terminali. Lipp -i hoiab STDIN-i konteinerist lahti, isegi kui te pole selle külge kinnitatud. See püsiv standardsisend on pool sellest, mida vajate interaktiivse kesta jaoks. Lipp -t on teine ​​pool ja see annab Dockerile korralduse määrata konteinerile pseudo-tty. See pakub meile uues konteineris interaktiivset kesta. Väljume konteinerist lihtsa väljumiskäsuga.

Nüüd saame selles Dockeri põhitõdede õpetuses proovida käivitada Ubuntu pilt.

$ sudo docker run -it ubuntu /bin/bash

Võite märgata, et docker kontrollib pilti kohapeal ja kui seda seal pole, tõmmatakse pilt automaatselt pilditeegist ja taaskord töötab meil interaktiivne kest. Konteinereid saame ka käitamise ajal nimetada.

$ sudo docker run –-name our_container -it ubuntu /bin/bash

ja lahkume uuesti.

Saame käitada ka varem loodud konteinerit ilma interaktiivse kestata.

$ sudo docker start container_name

Ja peatage konteineri kirjutamise dokkpeatus konteineri_nimi

$ sudo docker stop container_name

Kui tahame näha kõiki jooksvaid konteinereid, siis lihtsalt jookseme

$ docker ps

Ja kõigi konteinerite jaoks lisame sama käsu lõppu "- a", nagu see dokk ps -a.

See käsk näitab konteineri ID-d, millist pilti loomisel kasutatakse, tööolekut, avatud porte ja konteineri jaoks juhuslikult genereeritud nime, et hõlbustada haldamist.

Konteinerite käitamisel tahaksime ka teada, kui palju ressursse nad kasutavad, selleks saame kasutada käsku.

$ docker stats

Samuti saate vaadata, millised pildid oleme kohapeal alla laadinud, ja teavet nende kohta.

$ sudo docker images

Ülaltoodud Dockeri näites olev käsk kuvab dockeri pildi koos sildiga, mis näitab meie pildi versiooni, eristavat pildi ID-d, loomise aega ja pildi suurust.

Mis on virtualiseerimine?

Varem oli teenuse juurutamise protsess aeglane ja valus. Esiteks kirjutasid arendajad koodi; siis kasutas operatsioonide meeskond selle metallist masinatel, kus nad pidid otsima teegi versioone, plaastreid ja keelekompilaatoreid, et kood töötaks. Kui ilmnesid vead või vead, algas protsess otsast peale, arendajad parandasid selle ja seejärel oli operatiivmeeskond jälle kohal, et juurutada.

Hüpervisorite loomisega tehti edusamme. Hüperviisoritel on mitu Virtuaalsed masinad või samas hostis olevad VM-id, mis võivad töötada või välja lülitatud. Virtuaalarvutid vähendasid koodi juurutamise ja veaparanduse ooteaega suurel määral, kuid tegelik mängumuutja oli Dockeri konteinerid.

Olulised Dockeri käsud

Allpool on olulised Dockeri käsud:

käsk Kirjeldus
dokkide teave Teabe käsk
doki tõmbamine Laadige alla pilt
docker run -i -t pildi_nimi /bin/bash Käivitage pilt konteinerina
docker käivitab meie_konteineri Käivitage konteiner
dokkimispeatus konteineri_nimi Peatage konteiner
docker ps Kõigi töötavate konteinerite loend
dokkide statistika Konteinerite teave
dokkide pildid Allalaaditud piltide loend
Dockeri puhastamine Tapke kõik töötavad konteinerid.

Loe ka Dockeri tööintervjuu küsimused ja vastused nii värskematele kui ka kogenud spetsialistidele.

kokkuvõte

  • Docker on tarkvaraarendusplatvorm mitmekordse virtualiseerimiseks Operasamas hostis töötavad süsteemid. See aitab taristut ja rakendusi eraldada, et tarkvara kiiresti tarnida.
  • laevalaadija ArchiStruktuur: Dockeri mootor, Dockeri pildid, Dockeri registrid, Dockeri konteinerid.
  • DockerEngine: Docker on klient-serveri tüüpi rakendus, mis tähendab, et meil on kliente, kes edastavad serverile. Nii et Dockeri deemon kutsus: dockerd on Dockeri mootor, mis esindab serverit.
  • Dockeri pildid: Dockeri pildid on meie konteinerite lähtekood; kasutame neid konteinerite ehitamiseks. Neil võib olla eelinstallitud tarkvara, mis kiirendab juurutamist. Need on kaasaskantavad ja saame kasutada olemasolevaid pilte või luua oma pilte.
  • Dockeri registrid: Docker salvestab meie loodud pildid registritesse. Seal on avalikud ja eraregistrid. Dockeri ettevõttel on avalik register nimega Docker Hub, kus saate pilte ka privaatselt salvestada. Docker Hubil on miljoneid pilte, mida saate kohe kasutama hakata.
  • Dockeri konteinerid: Konteinerid on organisatsioonilised üksused ja üks Dockeri põhikontseptsioonidest. Kui loome pildi ja hakkame seda käivitama; me jookseme konteineris. Konteinerite analoogiat kasutatakse meie konteineris töötava tarkvara kaasaskantavuse tõttu.