Dockerin opetusohjelma aloittelijoille: perusteet, Architecture, Säiliöt

Mikä on Docker?

Satamatyöläinen on ohjelmistokehitysalusta virtualisointiin useilla Operasamassa isännässä toimivia järjestelmiä. Se auttaa erottamaan infrastruktuurin ja sovellukset, jotta ohjelmisto toimitetaan nopeasti. Toisin kuin Hypervisoreissa, joita käytetään virtuaalisten koneiden (VM) luomiseen, Dockerin virtualisointi suoritetaan järjestelmätasolla, joita kutsutaan myös Docker-säiliöiksi.

Kuten näet eron alla olevassa kuvassa, Docker-säiliöt toimivat isäntäkoneen päällä Operajärjestelmä. Tämä auttaa sinua parantamaan tehokkuutta ja turvallisuutta. Lisäksi voimme ajaa enemmän säiliöitä samassa infrastruktuurissa kuin virtuaalikoneita, koska kontit käyttävät vähemmän resursseja.

Virtualisointi Docker vs Hypervisorissa
Virtualisointi Docker vs Hypervisorissa

Toisin kuin virtuaalikoneet, jotka voivat kommunikoida isännän laitteiston kanssa (esim. Ethernet-sovitin virtuaalisten sovittimien luomiseksi), Docker-säilöt toimivat eristetyssä ympäristössä isäntäkoneen käyttöjärjestelmän päällä. Vaikka isäntäsi juoksee Windows OS, voit saada Linux-kuvat käynnissä konteissa avulla Hyper-V, joka luo automaattisesti pienen virtuaalikoneen virtualisoimaan järjestelmän peruskuvan, tässä tapauksessa Linux.

Miksi käyttää Dockeria?

  • Docker on tietokoneohjelmisto, jota käytetään virtualisointiin, jotta niitä olisi useita Operajärjestelmät käynnissä samalla isännällä
  • Docker on asiakas-palvelintyyppinen sovellus, mikä tarkoittaa, että meillä on asiakkaita, jotka välittävät palvelimelle
  • Docker-kuvat ovat säilöjemme "lähdekoodia"; käytämme niitä rakentamiseen
  • Dockerfilessä on kahdenlaisia ​​rekistereitä: 1.) julkiset ja 2)yksityiset rekisterit
  • Kontit ovat Docker-volyymin organisaatioyksiköitä. Yksinkertaisesti sanottuna kuva on malli ja säilö on kopio mallista. Sinulla voi olla useita säilöjä (kopioita) samasta kuvasta.

Satamatyöläinen Archirakenne

Nyt tässä Docker-säiliöopetusohjelmassa puhutaan Dockerin pääkomponenteista Dockerissa Archirakenne:

Satamatyöläinen Archirakenne
Satamatyöläinen Archirakenne

Docker-moottori

Docker on asiakas-palvelintyyppinen sovellus, mikä tarkoittaa, että meillä on asiakkaita, jotka välittävät palvelimelle. Joten Docker-daemon nimeltä: dockerd on Docker-moottori, joka edustaa palvelinta. Docker-daemonia ja asiakkaita voidaan ajaa samassa tai etäisännässä, ja ne kommunikoivat komentoriviasiakasbinaarin sekä täyden RESTful API olla vuorovaikutuksessa demonin kanssa: dockerd.

Docker-kuvat

Docker-kuvat ovat säilöjemme "lähdekoodia"; käytämme niitä konttien rakentamiseen. Niissä voi olla esiasennettu ohjelmisto, joka nopeuttaa käyttöönottoa. Ne ovat kannettavia, ja voimme käyttää olemassa olevia kuvia tai rakentaa omia.

Docker-rekisterit

Docker tallentaa rakentamamme kuvat rekistereihin. On julkisia ja yksityisiä rekistereitä. Docker-yrityksellä on julkinen rekisteri nimeltään Docker-keskitin, jossa voit myös tallentaa kuvia yksityisesti. Docker Hubissa on miljoonia kuvia, joita voit aloittaa nyt.

Docker-kontit

Kontit ovat organisaatioyksiköitä ja yksi Dockerin peruskonsepteista. Kun rakennamme kuvan ja aloitamme sen käyttämisen; kuljemme kontissa. Säilön analogiaa käytetään, koska kontissamme käytössämme olevat ohjelmistot ovat siirrettäviä. Voimme siirtää sitä, toisin sanoen "lähettää" ohjelmiston, muokata, hallita, luoda tai päästä eroon siitä, tuhota sen, aivan kuten rahtilaivat voivat tehdä oikeiden konttien kanssa.

Yksinkertaisesti sanottuna kuva on malli ja säilö on kopio mallista. Sinulla voi olla useita säilöjä (kopioita) samasta kuvasta.

Alla on kuva, joka edustaa täydellisesti eri komponenttien välistä vuorovaikutusta ja Dockerin konttiteknologian toimintaa.

Meillä on useita dockers-komentoja docker pull, docker run.. puhumme siitä lisää myöhemmin.

Kuinka asentaa Docker Linuxiin/Ubuntu

Alla on vaihe vaiheelta Dockerin asennusprosessi Linuxissa/Ubuntu:

Vaihe 1) Dockerin asentamiseksi meidän on käytettävä Docker-tiimin DEB-paketteja.

Sitä varten tietty edellytys Ubuntu paketteja tarvitaan.

Käytä alla olevaa komentoa asentaaksesi Ubuntu paketit

$ 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ä.

Käytä alla olevaa Docker-komentoa syöttääksesi GPG-avain

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

Vaihe 3) Lisää seuraavaksi Docker APT -arkisto.

Käytä alla olevaa Docker-komentoa lisätäksesi arkiston

$ 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 lisätä GPG-avaimen automaattisesti isäntään.

lsb_release-komennon pitäisi täyttää Ubuntu isäntäsi jakeluversio.

Vaihe 4) Kun olet lisännyt GPG-avaimen,

Päivitä APT-lähteet käyttämällä alla olevaa Docker-komentoa

$ sudo apt-get update

Voimme nyt asentaa itse Docker-paketin.

Vaihe 5) Kun APT-lähteet on päivitetty,

Aloita Docker-pakettien asennus Ubuntu käyttämällä alla olevaa Docker-komentoa

$ sudo apt-get install docker-ce

Yllä annettu komento asentaa Dockerin ja muut tarvittavat lisäpaketit. Ennen Docker 1.8.0:a paketin nimi oli lxc-docker ja Docker 1.8:n ja 1.13:n välillä paketin nimi oli docker-engine.

HUOMAUTUS: Docker for Windows Vaatii Windows 10 Pro- tai Enterprise-versio 14393 tai Windows server 2016 RTM käynnissä

Dockerin käyttäminen Dockerin peruskomentojen avulla

Näin voit käyttää Dockeria käyttämällä Dockerin peruskomentoja:

Peruskomento, joka meidän on suoritettava Dockerin asennuksen jälkeen, on $ docker info, kuten sanoimme aiemmin.

$ sudo docker info

Sinun pitäisi saada samanlainen tai seuraava tulos

Käytä Dockeria Dockerin peruskomentojen avulla

Kuten voimme nähdä yllä olevassa Docker-esimerkissä, meillä on tietoja Docker-säiliöistä, kuinka monta on käynnissä, keskeytetty tai pysäytetty ja kuinka monta kuvaa olemme ladaneet. Joten hankitaan ensimmäinen kuva tässä Docker-komento-opetusohjelmassa.

$ sudo docker pull alpine

Tällä komennolla käskemme dockeria lataamaan kuvan alpin, noutamaan sen julkisesta rekisteristä, uusin versio, joka on oletuksena asetettu.

*alpine on Alpine Linuxiin perustuva minimaalinen Docker-kuva, jossa on täydellinen pakettihakemisto ja vain 5 Mt.

Jos haluamme ajaa kuvan säilönä, käytämme seuraavaa komentoa tässä Docker-opetusoppaassa.

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

Jos suoritamme komennon, meidät lähetetään suoraan alpin terminaaliin. Lippu -i pitää STDIN-tunnuksen auki säiliöstä, vaikka et olisi kiinnitettynä siihen. Tämä jatkuva vakiosyöte on puolet siitä, mitä tarvitset interaktiiviselle kuorelle. -t-lippu on toinen puolisko ja joka käskee Dockeria määrittämään säilölle pseudo-tty:n. Tämä tarjoaa meille interaktiivisen kuoren uudessa säiliössä. Poistumme säiliöstä yksinkertaisella exit-komennolla.

Nyt tässä Dockerin perusopetusohjelmassa voimme yrittää suorittaa Ubuntu kuva.

$ sudo docker run -it ubuntu /bin/bash

Voit huomata Docker-tarkistuksia kuvan paikallisesti, ja jos sitä ei ole, kuva vedetään kuvakirjastosta automaattisesti, ja meillä on jälleen interaktiivinen kuori käynnissä. Voimme myös nimetä kontit, kun käytämme niitä.

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

ja poistumme taas.

Voimme myös ajaa aiemmin luomaamme konttia ilman interaktiivista kuorta.

$ sudo docker start container_name

Ja lopeta säilön kirjoittaminen telakointiasemaan lopeta kontin_nimi

$ sudo docker stop container_name

Jos haluamme nähdä kaikki käynnissä olevat kontit, me vain juoksemme

$ docker ps

Ja kaikille säilöille lisäämme "- a" tämän saman komennon loppuun, kuten tämä docker ps -a.

Tämä komento näyttää säilön tunnuksen, jota kuvaa käytetään luomishetkellä, käynnissä olevan tilan, avoimet portit ja satunnaisesti luodun säilön nimen hallinnan helpottamiseksi.

Kun suoritamme kontteja, haluaisimme myös tietää kuinka paljon resursseja ne käyttävät, tähän tarkoitukseen voimme käyttää komentoa.

$ docker stats

Voit myös nähdä paikallisesti ladatut kuvat ja tiedot niistä.

$ sudo docker images

Yllä olevan Docker-esimerkin komento näyttää Docker-kuvan tunnisteella, joka näyttää kuvaversiomme, erottuvan kuvatunnuksen, luomisajankohdan ja kuvan koon.

Mikä on virtualisointi?

Aiemmin palvelun käyttöönottoprosessi oli hidasta ja tuskallista. Ensinnäkin kehittäjät kirjoittivat koodia; sitten operaatiotiimi otti sen käyttöön paljasmetallikoneilla, joissa heidän oli etsittävä kirjastoversioita, korjaustiedostoja ja kielikääntäjiä, jotta koodi toimisi. Jos oli joitain bugeja tai virheitä, prosessi alkoi alusta, kehittäjät korjasivat sen, ja sitten taas käyttötiimi oli paikalla ottamaan käyttöön.

Hypervisorien luomisen myötä tapahtui parannus. Hypervisorilla on useita Virtuaalikoneet tai samalla isännällä oleviin virtuaalikoneisiin, jotka voivat olla käynnissä tai sammutettuina. Virtuaalikoneet lyhensivät koodin käyttöönoton ja virheenkorjauksen odotusaikaa valtavasti, mutta todellinen pelin vaihtaja oli Docker-säiliöt.

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 konteista
telakkatilastot Säilön tiedot
docker -kuvia Luettelo ladatuista kuvista
Dockerin puhdistus Tapa kaikki käynnissä olevat säiliöt.

Lue myös Dockerin työhaastattelun kysymyksiä ja vastauksia sekä tuoreemmille että kokeneille ammattilaisille.

Yhteenveto

  • Docker on ohjelmistokehitysalusta virtualisointiin useilla Operasamassa isännässä toimivia järjestelmiä. Se auttaa erottamaan infrastruktuurin ja sovellukset, jotta ohjelmisto toimitetaan nopeasti.
  • Satamatyöläinen Archirakenne: Docker Engine, Docker Images, Docker Registries, Docker Containers.
  • Docker-moottori: Docker on asiakas-palvelintyyppinen sovellus, mikä tarkoittaa, että meillä on asiakkaita, jotka välittävät palvelimelle. Joten Docker-daemon nimeltä: dockerd on Docker-moottori, joka edustaa palvelinta.
  • Docker-kuvat: Docker-kuvat ovat säilöjemme "lähdekoodia"; käytämme niitä konttien rakentamiseen. Niissä voi olla esiasennettu ohjelmisto, joka nopeuttaa käyttöönottoa. Ne ovat kannettavia, ja voimme käyttää olemassa olevia kuvia tai rakentaa omia.
  • Docker-rekisterit: Docker tallentaa rakentamamme kuvat rekistereihin. On julkisia ja yksityisiä rekistereitä. Docker-yrityksellä on julkinen rekisteri nimeltä Docker hub, johon voit myös tallentaa kuvia yksityisesti. Docker Hubissa on miljoonia kuvia, joita voit aloittaa nyt.
  • Docker-säiliöt: Kontit ovat organisaatioyksiköitä ja yksi Dockerin peruskonsepteista. Kun rakennamme kuvan ja aloitamme sen käyttämisen; kuljemme kontissa. Säilön analogiaa käytetään, koska kontissamme käytössämme olevat ohjelmistot ovat siirrettäviä.