Dockerin opetusohjelma aloittelijoille: perusteet, Architecture, Säiliöt
⚡ Älykäs yhteenveto
Docker on konttialusta, joka pakkaa sovelluksia ja niiden riippuvuuksia kannettaviin, kevyisiin kontteihin. Tämä yleiskatsaus selittää Dockerin arkkitehtuurin, asennuksen Ubuntu, olennaisia komentoja ja sitä, miten kontit eroavat perinteisistä virtuaalikoneista nopeamman ohjelmistotoimituksen saavuttamiseksi.

Docker on yksi suosituimmista nykyaikaisissa sovelluksissa käytetyistä konttialustoista. DevOps ja pilvipalvelutyönkulkuja. Tämä Docker-opetusohjelma aloittelijoille selittää, mikä Docker on, miten Docker-arkkitehtuuri toimii ja miten Docker asennetaan Ubuntuja kuvien ja säilöjen hallintaan käytettävät peruskomennot.
Mikä on Docker?
Satamatyöläinen on virtualisointiin tarkoitettu ohjelmistokehitysalusta, jonka avulla useita käyttöjärjestelmiä voi ajaa samalla isännöintikoneella. Se auttaa erottamaan infrastruktuurin sovelluksista, jotta voit toimittaa ohjelmistoja nopeasti. Toisin kuin hypervisorit, joita käytetään virtuaalikoneiden (VM) luomiseen, Docker suorittaa virtualisoinnin järjestelmätasolla käyttämällä Docker-konteiksi kutsuttuja yksiköitä.
Docker-kontit toimivat isäntäkäyttöjärjestelmän päällä, kuten alla olevassa kuvassa näkyy. Tämä parantaa sekä tehokkuutta että turvallisuutta. Voit myös käyttää useampia kontteja kuin virtuaalikoneita samassa infrastruktuurissa, koska kontit käyttävät vähemmän resursseja.

Toisin kuin virtuaalikoneet, jotka voivat kommunikoida suoraan isäntälaitteiston kanssa (esimerkiksi Ethernet-sovitin, joka luo lisää virtuaalisovittimia), Docker-kontit toimivat erillisessä ympäristössä isäntäkäyttöjärjestelmän päällä. Vaikka isäntäsi toimisi Windows, voit juosta Linux kuvia säiliöiden sisällä apuna Hyper-V, joka luo automaattisesti pienen virtuaalikoneen peruskuvan virtualisoimiseksi.
Nyt kun tiedät, mikä Docker on, katsotaanpa tärkeimpiä syitä, miksi tiimit valitsevat sen.
Miksi käyttää Dockeria?
Tässä ovat tärkeimmät syyt käyttää Dockeria:
- Docker on virtualisointiin käytettävä ohjelmisto, joka mahdollistaa useita toimintoja käyttöjärjestelmät toimimaan samalla isännöinnillä.
- Docker on asiakas-palvelin-sovellus, mikä tarkoittaa, että asiakkaat kommunikoivat palvelimen kanssa.
- Docker-kuvat toimivat säilöjen "lähdekoodina"; käytät niitä rakentamiseen.
- Docker tukee kahdenlaisia rekistereitä: julkisia ja yksityisiä.
- Kontit ovat Dockerin organisaatioyksiköitä. Yksinkertaisesti sanottuna kuva on mallipohja ja kontti on kopio mallipohjasta, joten voit ajaa useita kontteja samasta kuvasta.
Nämä hyödyt johtuvat Dockerin suunnittelusta. Seuraavassa osiossa eritellään Docker-arkkitehtuuri ja sen ydinkomponentit.
Satamatyöläinen Archirakenne
Tässä Docker-konttioppaassa tarkastellaan nyt Docker-arkkitehtuurin pääkomponentteja.
Docker-moottori
Docker on asiakas-palvelin-sovellus, mikä tarkoittaa, että meillä on asiakkaita, jotka välittävät pyyntöjä palvelimelle. Docker-daemon, nimeltään dockerd, on Docker-moottori, joka edustaa palvelinta. Daemon ja asiakkaat voivat toimia samassa tai etäisännässä, ja ne kommunikoivat komentorivipohjaisen asiakasbinäärin ja täyden... RESTful API joka on vuorovaikutuksessa dockerdin kanssa.
Docker-kuvat
Docker-kuvat ovat konttien "lähdekoodia"; käytämme niitä konttien rakentamiseen. Kuviin voi olla esiasennettu ohjelmisto, mikä nopeuttaa käyttöönottoa. Ne ovat kannettavia, ja voit käyttää olemassa olevia kuvia tai rakentaa omia.
Docker-rekisterit
Docker tallentaa rakentamamme levykuvat rekistereihin. On olemassa julkisia ja yksityisiä rekistereitä. Dockerilla on julkinen rekisteri nimeltä Docker-napa, jossa voit myös tallentaa kuvia yksityisesti. Docker Hubissa on miljoonia kuvia, joita voit alkaa käyttää heti.
Docker-kontit
Kontit ovat Dockerin organisaatioyksiköitä ja yksi sen peruskäsitteistä. Kun rakennamme kuvan ja suoritamme sen, suoritamme sitä kontin sisällä. Konttianalogiaa käytetään sen sisällä toimivan ohjelmiston siirrettävyyden vuoksi: voit siirtää, "lähettää", muokata, hallita, luoda tai tuhota sitä aivan kuten rahtialukset käsittelevät oikeita kontteja.
Yksinkertaisesti sanottuna kuva on malli ja säilö on kopio mallista. Sinulla voi olla useita säilöjä (kopioita) samasta kuvasta.
Näiden eri komponenttien välinen vuorovaikutus osoittaa, miten Docker-konttiteknologia toimii yhdessä. Komentojen, kuten docker pull ja docker run, avulla voit hallita tätä työnkulkua, joita käsittelemme myöhemmin.
Asennamme Dockerin arkkitehtuuri mielessä pitäen, jotta voit kokeilla näitä komponentteja itse.
Kuinka asentaa Docker Linuxiin/Ubuntu
Alla on vaiheittainen Dockerin asennusprosessi Linuxissa/Ubuntu:
Vaihe 1) Dockerin asentamiseen tarvitset Docker-tiimin DEB-paketit. Ensinnäkin joitakin edellytyksiä Ubuntu Paketteja tarvitaan. Asenna ne alla olevalla komennolla.
$ sudo apt-get install \ apt-transport-https \ ca-certificates curl \ software-properties-common
*merkki “\” ei ole välttämätön, sitä käytetään uudelle riville, halutessasi voit kirjoittaa komennon käyttämättä “\” vain yhdellä rivillä.
Vaihe 2) Lisää virallinen Docker GPG -avain sormenjäljellä. Syötä GPG-avain alla olevalla Docker-komennolla.
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Vaihe 3) Lisää seuraavaksi Docker APT -arkisto alla olevalla komennolla.
$ sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"
Sinua saatetaan pyytää vahvistamaan, että haluat lisätä arkiston ja että GPG-avain lisätään automaattisesti isäntäkoneeseesi. lsb_release-komennon pitäisi täyttää lomake. Ubuntu isäntäsi jakeluversio.
Vaihe 4) Kun olet lisännyt GPG-avaimen, päivitä APT-lähteet alla olevalla Docker-komennolla.
$ sudo apt-get update
Voit nyt asentaa itse Docker-paketin.
Vaihe 5) Kun APT-lähdekoodit on päivitetty, aloita Docker-pakettien asentaminen Ubuntu käyttämällä alla olevaa Docker-komentoa.
$ sudo apt-get install docker-ce
Yllä oleva komento asentaa Dockerin ja muut tarvittavat paketit. Ennen Docker 1.8.0:aa paketin nimi oli lxc-docker, ja Docker 1.8:n ja 1.13:n välillä paketin nimi oli docker-engine.
HUOMAUTUS: Docker-sovellus Windows Vaatii Windows 10 Pro- tai Enterprise-versio 14393 tai Windows Server 2016 RTM, suoritettavaksi.
Dockerin käyttäminen Dockerin peruskomentojen avulla
Näin käytät Dockeria muutamalla Dockerin peruskomennolla.
Peruskomento, joka sinun tulisi suorittaa Dockerin asentamisen jälkeen, on docker info, kuten aiemmin mainittiin.
$ sudo docker info
Sinun pitäisi saada seuraavankaltainen tulos.
Kuten yllä olevassa Docker-esimerkissä on esitetty, voimme nähdä tietoja Docker-konteineista: kuinka monta on käynnissä, keskeytettynä tai pysäytettynä ja kuinka monta kuvaa on ladattu. Otetaan nyt ensimmäinen kuva.
$ sudo docker pull alpine
Tällä komennolla käskemme Dockeria lataamaan alpine-kuvan julkisesta rekisteristä uusimmassa versiossa, joka on oletusarvoisesti asetettu.
*alpine on Alpine Linuxiin perustuva minimaalinen Docker-kuva, jossa on täydellinen pakettihakemisto ja vain 5 Mt.
Jos haluamme suorittaa kuvan säilönä, käytämme seuraavaa komentoa.
$ sudo docker run -i -t alpine /bin/bash
Komennon suorittaminen lähettää meidät suoraan Alpine-terminaaliin. -i-lippu pitää STDIN:n auki säilössä, vaikka et olisi siihen yhteydessä; tämä pysyvä vakiosyöte on puolet siitä, mitä tarvitset interaktiivista komentotulkkia varten. -t-lippu on toinen puoli ja se käskee Dockeria määrittämään pseudo-tty-syötteen säilölle. Yhdessä ne antavat meille interaktiivisen komentotulkin uudessa säilössä. Poistumme säilöstä yksinkertaisella exit-komennolla.
Tässä Dockerin perusteet -opetusohjelmassa voimme nyt kokeilla suorittaa Ubuntu kuva.
$ sudo docker run -it ubuntu /bin/bash
Huomaa, että Docker tarkistaa kuvan paikallisesti, ja jos sitä ei löydy, kuva noudetaan automaattisesti kuvakirjastosta. Jälleen kerran meillä on käynnissä interaktiivinen komentotulkki. Voimme myös nimetä säilöt niitä suoritettaessa.
$ sudo docker run –-name our_container -it ubuntu /bin/bash
Sitten poistumme taas. Voimme myös suorittaa aiemmin luomamme säilön ilman interaktiivista komentotulkkia.
$ sudo docker start container_name
Ja pysäytämme kontin kirjoittamalla docker stop container_name.
$ sudo docker stop container_name
Jos haluamme nähdä kaikki käynnissä olevat kontit, suoritamme yksinkertaisesti seuraavan komennon.
$ docker ps
Kaikkien säilöjen kohdalla lisätään komennon loppuun pääte "-a", kuten docker ps -a:ssa. Tämä komento näyttää säilön tunnuksen, sen käyttämän levykuvan, luontiajankohdan, suoritustilan, näkyvät portit ja satunnaisesti luodun nimen hallinnan helpottamiseksi.
Kun suoritamme kontteja, haluamme usein tietää, kuinka monta resurssia ne käyttävät. Tätä varten voimme käyttää seuraavaa komentoa.
$ docker stats
Voit myös nähdä, mitkä kuvat olet ladannut paikallisesti, sekä tietoja niistä.
$ sudo docker images
Yllä olevan Docker-esimerkin komento näyttää jokaisen Docker-kuvan, jossa on tunniste, joka näyttää kuvan version, yksilöllisen kuvan tunnuksen, luontipäivämäärän ja kuvan koon.
Ymmärtääksemme, miksi kontit ovat niin suuri parannus, on hyödyllistä tarkastella virtualisoinnin kehitystä.
Mikä on virtualisointi?
Aiemmin palvelun käyttöönotto oli hidasta ja työlästä. Kehittäjät kirjoittivat koodia, ja sitten operatiivinen tiimi otti sen käyttöön paljailla metallikoneilla, joissa heidän piti tarkkailla kirjastoversioita, korjauksia ja kielikääntäjiä, jotta koodi toimisi. Jos ilmeni vikoja tai virheitä, prosessi alkoi alusta: kehittäjät korjasivat ongelman ja operatiivinen tiimi otti sen uudelleen käyttöön.
Asiat paranivat hypervisorien luomisen myötä. Hypervisorit suorittavat useita virtuaalikoneettai virtuaalikoneita samalla isännöintipalvelimella, joka voi olla käynnissä tai pois päältä. Virtuaalikoneet lyhensivät huomattavasti koodin käyttöönottoon ja virheiden korjaamiseen kuluvaa odotusaikaa, mutta todellinen käännekohta oli Docker-konttien käyttöönotto.
Dockerin suosiota vauhdittavat myös orkestrointityökalut, jotka hallitsevat säilöjä skaalautuvasti, kuten KubernetesEnnen kuin jatkamme, tässä on lyhyt katsaus tärkeimpiin Docker-komentoihin.
Tärkeät Docker-komennot
Alla ovat tärkeät Docker-komennot:
| Komento | Tuotetiedot |
|---|---|
| telakkatiedot | Tietokomento |
| telakkaveto | Lataa kuva |
| docker run -i -t kuvan_nimi /bin/bash | Suorita kuva säilönä |
| docker start our_container | Käynnistä säiliö |
| telakointiaseman pysäkki kontin_nimi | Pysäytä säiliö |
| docker ps | Luettelo kaikista käynnissä olevista säilöistä |
| telakkatilastot | Säilön tiedot |
| docker -kuvia | Luettelo ladatuista kuvista |
| Dockerin puhdistus | Tapa kaikki käynnissä olevat säiliöt. |
Lue myös nämä Dockerin työhaastattelun kysymyksiä ja vastauksia niin vasta-alkajille kuin kokeneillekin ammattilaisille.

