Hvordan installere og bruke Docker CE på Debian 9

Hvordan installere og bruke Docker CE på Debian 9
De fleste av oss er erfarne med virtuelle maskiner under VirtualBox, VMware, Xen og andre teknologier som lar oss kjøre et OS (operativsystem) innenfor vårt virkelige OS. Teorien bak Docker ligner den bak virtuelle maskiner. En virtuell maskin tillot oss å kjøre forskjellige virtuelle servere i en enkelt fysisk enhet som lar oss isolere tjenester eller applikasjoner (hvis en server mislykkes resten, fortsetter å fungere) og lagre ressurser (en maskinvare i stedet for mange). Virtuelle maskiner var revolusjonerende for sysadmins som det er Docker nå.

Docker lar oss isolere applikasjoner uten behov for å inkludere miljøet eller OS, noe som betyr at vi kan isolere en tjeneste som Nginx uten behov for å dedikere et helt operativsystem for det, uten engang dedikerte biblioteker. Applikasjoner (bilder) er isolert innenfor containere som skal brukes og tilpasses som forklart i denne opplæringen.

Noen Docker -komponenter:

  • Dockerd: er Docker -demonet som klarer
  • Docker Hub Repositories: Public Repository Hosting Alle containere som er delt av samfunnet. Du trenger ikke alltid å lage en beholder, du kan glede deg over klare containere fra Docker Hub -lagringene.
  • Docker Images vs Docker Containers: Et Docker -bilde er den første live -programvaren vi bruker i en beholder som vi kan bruke endringene våre fra (og lage et nytt bilde inkludert dem hvis vi vil). Vi kan ikke redigere eller endre data innen bilder, men vi kan kjøre dem innen containere og eksportere et nytt bilde med den nødvendige tilpasning.

Installere Docker

Før vi setter opp Docker, må vi sørge for at gamle versjoner ikke er installert, tidligere til Docker Installation Run:

Apt Fjern Docker Docker-Engine Docker.io containerd runc

Oppdater deretter depoter ved å kjøre:

APT -oppdatering

La oss installere pakker for å tillate Docker -installasjon gjennom HTTPS, utføre:

Apt Installer apt-transport-HTTPS Ca-Certificates Curl GNUPG2 Software-Properties-Common
Curl -fssl https: // Last ned.Docker.com/linux/debian/gpg | sudo apt-key add -

Legg nå til Docker -nøkler, skriv:

APT-Key Fingerprint 0EBFCD88

Legg nå til Docker -depoter ved å kjøre:

Add-APT-Repository "Deb [Arch = AMD64] https: // Last ned.Docker.com/linux/debian
$ (lsb_release -cs) stabil "

Oppdater depoter ved å kjøre:

APT -oppdatering

Som du ser ble Docker -depotet lagt til vellykket. For å installere Docker Execute:

Apt Install Docker-CE Docker-CE-CLI Containerd.io

trykk Y Når du blir bedt om å fortsette.

Kjør en enkel instruksjon for å sjekke Docker ble installert riktig ved å kjøre:

Docker Run Hello-World

Som du ser at Hello-World-bildet ikke ble funnet lokalt, vil Docker CE laste det ned fra Docker Hub Repositories. Testbildet viser installasjonen fungerer ordentlig, og at Docker -demonet ble kontaktet av klienten.

Docker Basic Commands

Docker Start: Start/kjør en eksisterende container.
Docker Stop:
Stopp en start eller løpende beholder.
Docker Build: Bygg et Docker -bilde.
Docker Run: Kjør kommandoer i en Docker -beholder.
Docker -søk: Search Docker -bilder i Docker Hub -lagringene.
Docker Pull: Denne kommandoen brukes til å trekke bilder fra Docker Hubor annen definert kilde.
Docker forpliktelse: Lag en ny beholder fra en eksisterende inkludert modifikasjoner.
Docker PS: viser Docker -containere
Docker Image LS: viser Docker -bilder.

Kjører snort med Docker CE på Debian 9

For dette eksemplet vil jeg bruke en snort -IDS (Intrusion Detection System) -beholder, for å installere Snort -beholderen fra Docker Hub Run:

Docker Pull Linton/Docker-Snort

Gi beholderen tilgang til nettverket ved å kjøre:

Docker Run -It - -RM --Net = Vert Linton/Docker -SNORT/BIN/BASH

Bruk VI til å redigere snortregler, skriv:

vi/etc/snort/regler/lokalt.regler

La oss nå legge til en regel til å snuse som vil rapportere pinger til systemet vårt, for å sjekke om det fungerer ordentlig.

Når vi ble åpnet, trykk ALT+I for å sette inn nytt innhold og legge til følgende linje:

ALERT ICMP ALLE -> NOEN (MSG: "Ping Report Works ..."; SID: 1000004;)

Når regelen ble lagt til type “😡”For å lagre og avslutte.

La oss nå løpe:

snort -i enp2s0 -c/etc/snort/etc/snort/snort.konf -en konsoll

Merk: Bytt ut ENP2S0 med nettverksenheten din.

Nå hvis du pinger enheten din, vil live varsler be om å vise regelen vi la til. For mer informasjon om snort kan du sjekke konfigurere snort -ID -er og opprette regler og snort varsler.

Å gå ut av en beholder bare løpe exit

Hvis du vil liste opp de tilgjengelige containerne kjører:

Docker PS -A

Opprette et nytt bilde fra en beholder

Som sagt før et Docker -bilde er den originale og uforanderlige kilden til programvaren, mens containeren er den vedvarende versjonen der vi kan lagre modifikasjoner med kommandoen begå. Vi vil laste ned et Ubuntu -bilde, endre det og opprette et nytt inkludert vår modifisering:

Først for å laste ned Ubuntu Image Run:

Docker Pull Ubuntu

Når den er lastet ned, kjør den ved å skrive:

Docker Run -i -t ubuntu /bin /bash

Opprett en fil som vil representere modifiseringen ved å kjøre:

berøringsmodisiering
Deretter avslutt skriving:
exit

Sjekk beholder -IDen ved å kjøre:

Docker PS -A

Bruk kommandoen Docker forplikter seg og container -IDen for å lage et nytt bilde fra den endrede beholderen:

Docker forpliktelse 6643124f4da8 Modified-Ubuntu

Merk: erstatte 6643124f4da8 for container -IDen din.

La oss nå kjøre det nye bildet:

Docker Run -i -t Modified -Ubuntu

Sjekk om filen vår forblir der:

ls

Og når du ser endringene er vedvarende, forblir filen der.

Konklusjon:

Docker er flott, ikke som et alternativ, men som hovedressurs for å erstatte virtuelle maskiner. Selv om vi kan bryte containerne våre, kan vi ikke bryte systemets vertskap, installasjon, konfigurasjon og tilpasningsprosess.

Docker reduserer bokstavelig talt arbeidet fra gigabyte til MB og forhindrer mange problemer forbundet med OS -virtualisering med fordeler fra utviklere til endelige brukere.

Takk for at du fulgte Linuxhint.com, fortsett å følge oss for mer opplæringsprogrammer og oppdateringer om Linux, nettverk og sikkerhet.