Android

Hvordan installere og bruke docker på centos 7

How to Install Docker in Centos 7 linux

How to Install Docker in Centos 7 linux

Innholdsfortegnelse:

Anonim

Docker er en containerteknologi som lar deg raskt bygge, teste og distribuere applikasjoner som bærbare, selvforsynende containere som kan kjøre praktisk talt hvor som helst.

I denne opplæringen skal vi gå gjennom hvordan du installerer Docker CE på CentOS 7 og utforske de grunnleggende Docker-konseptene og kommandoene.

Forutsetninger

Før du fortsetter med denne opplæringen, må du forsikre deg om at følgende forutsetninger er oppfylt:

  • CentOS 7 serverDu er logget inn som en ikke-root-bruker med sudo-rettigheter. Du sjekker denne guiden om hvordan du oppretter en ny sudo-bruker.

Installer Docker på CentOS

Selv om Docker-pakken er tilgjengelig i det offisielle CentOS 7-depotet, er det ikke alltid det er den siste versjonen. Den anbefalte tilnærmingen er å installere Docker fra Dockers depoter.

Følg trinnene nedenfor for å installere Docker på CentOS 7-serveren:

  1. Start med å oppdatere systempakkene og installer de nødvendige avhengighetene:

    sudo yum update sudo yum install yum-utils device-mapper-persistent-data lvm2

    Deretter kjører du følgende kommando som vil legge Docker-stabilen til systemet ditt:

    sudo yum-config-manager --add-repo

    Nå som Docker-depotet er aktivert, installerer du den siste versjonen av Docker CE (Community Edition) ved å bruke yum ved å skrive:

    sudo yum install docker-ce

    Når Docker-pakken er installert, starter du Docker-demonet og lar den starte automatisk ved oppstarttid:

    sudo systemctl start docker sudo systemctl enable docker

    Slik bekrefter du at Docker-tjenesten kjører:

    sudo systemctl status docker

    Utgangen skal se slik ut:

    ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2018-10-31 08:51:20 UTC; 7s ago Docs: https://docs.docker.com Main PID: 2492 (dockerd) CGroup: /system.slice/docker.service ├─2492 /usr/bin/dockerd └─2498 docker-containerd --config /var/run/docker/containerd/containerd.toml

    I skrivende stund er den nåværende stabile versjonen av Docker, 18.06.1 , for å skrive ut Docker-versjonstypen:

    docker -v

    Docker version 18.06.1-ce, build e68fc7a

Utføre Docker-kommandoen uten Sudo

Som standard administrering krever Docker administratorrettigheter. Hvis du vil kjøre Docker-kommandoer som ikke-root-bruker uten å forhåndsvise sudo , må du legge brukeren din til docker-gruppen som opprettes under installasjonen av Docker CE-pakken. Du kan gjøre det ved å skrive:

sudo usermod -aG docker $USER

$USER er en miljøvariabel som inneholder brukernavnet ditt.

Logg ut og logg inn igjen slik at gruppemedlemskapet blir oppdatert.

For å bekrefte at Docker er installert vellykket, og at du kan kjøre docker-kommandoer uten sudo, utgir du følgende kommando som vil laste ned et testbilde, kjøre det i en container, skrive ut en "Hello from Docker" -melding og avslutte:

docker container run hello-world

Utgangen skal se slik ut:

Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 9bb5a5d4561a: Pull complete Digest: sha256:f5233545e43561214ca4891fd1157e1c3c563316ed8e237750d59bde73361e77 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly.

Docker kommandolinjegrensesnitt

Nå som vi har en fungerende Docker-installasjon, la oss gå over den grunnleggende syntaks for docker CLI.

Kommandolinjen til docker har følgende form:

docker

Du kan liste alle tilgjengelige kommandoer ved å skrive docker uten parametere:

docker

docker --help

Docker-bilder

Et Docker-bilde består av en serie lag som representerer instruksjoner i bildets Dockerfile som utgjør en kjørbar programvare. Et bilde er en uforanderlig binær fil som inkluderer applikasjonen og alle andre avhengigheter som binære filer, biblioteker og instruksjoner som er nødvendige for å kjøre applikasjonen. Kort sagt, et Docker-bilde er egentlig et øyeblikksbilde av en Docker-beholder.

Docker Hub er skybasert registertjeneste som blant annet brukes til å oppbevare Docker-bildene enten i et offentlig eller privat lagringssted.

For å søke i Docker Hub-depotet etter et bilde, bruk bare søkeunderkommandoen. For å søke etter CentOS-bildet, kjører du:

docker search centos

Utgangen skal se slik ut:

NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official build of CentOS. 4257 ansible/centos7-ansible Ansible on Centos7 109 jdeathe/centos-ssh CentOS-6 6.9 x86_64 / CentOS-7 7.4.1708 x86_… 94 consol/centos-xfce-vnc Centos container with "headless" VNC session… 52 imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 40 tutum/centos Simple CentOS docker image with SSH access 39

Som du kan se søkeresultatene skrives ut en tabell med fem kolonner, NAME , DESCRIPTION , STARS , OFFICIAL og AUTOMATED . Det offisielle bildet er et bilde som Docker utvikler i forbindelse med oppstrøms partnere.

Hvis vi ønsker å laste ned den offisielle builden av CentOS 7, kan vi gjøre det ved å bruke underkommandoen for image pull :

docker image pull centos

Using default tag: latest latest: Pulling from library/centos 469cfcc7a4b3: Pull complete Digest: sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Status: Downloaded newer image for centos:latest

Avhengig av Internett-hastigheten din, kan nedlastingen ta noen sekunder eller noen få minutter. Når bildet er lastet ned, kan vi liste opp bildene med:

docker image ls

Utdataene skal se ut som følgende:

REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest e38bc07ac18e 3 weeks ago 1.85kB centos latest e934aafc2206 4 weeks ago 199MB

Hvis du av en eller annen grunn vil slette et bilde, kan du gjøre det med image rm underkommandoen:

docker image rm centos

Untagged: centos:latest Untagged: centos@sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Deleted: sha256:e934aafc22064b7322c0250f1e32e5ce93b2d19b356f4537f5864bd102e8531f Deleted: sha256:43e653f84b79ba52711b0f726ff5a7fd1162ae9df4be76ca1de8370b8bbf9bb0

Docker-containere

En forekomst av et bilde kalles en beholder. En container representerer en kjøretid for en enkelt applikasjon, prosess eller tjeneste.

Det er kanskje ikke den mest passende sammenligningen, men hvis du er en programmerer kan du tenke på et Docker-bilde som klasse og Docker-beholder som et eksempel på en klasse.

Vi kan starte, stoppe, fjerne og administrere en container med docker container .

Følgende kommando starter en Docker-beholder basert på CentoOS-bildet. Hvis du ikke har bildet lokalt, laster det ned først:

docker container run centos

Ved første blikk kan det se ut som om det ikke skjedde noe i det hele tatt. Det stemmer ikke. CentOS-containeren stopper umiddelbart etter oppstart fordi den ikke har en langvarig prosess og vi ga ingen kommando, så containeren startet opp, kjørte en tom kommando og deretter avsluttet.

Bryteren- -it lar oss samhandle med containeren via kommandolinjen. Slik starter du en interaktiv containertype:

docker container run -it centos /bin/bash

Som du kan se fra utdataene når beholderen er startet, endres ledeteksten, noe som betyr at du nå jobber inne fra beholderen:

#

Slik viser du kjører containere:, skriv:

docker container ls

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli Hvis du ikke har noen containere som kjører, vil resultatet være tomt.

For å se både kjørte og stoppede containere, passerer du den -a bryteren:

docker container ls -a

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli c55680af670c centos "/bin/bash" 30 minutes ago Exited (0) 30 minutes ago modest_hawking c6a147d1bc8a hello-world "/hello" 20 hours ago Exited (0) 20 hours ago sleepy_shannon

For å slette en eller flere containere, bare kopier beholder-ID (eller ID-er) ovenfra og lime dem etter container rm underkommando:

docker container rm c55680af670c

Konklusjon

Du har lært hvordan du installerer Docker på CentOS 7-maskinen din, og hvordan du laster ned Docker-bilder og administrerer Docker-containere. Det kan også være lurt å lese om Docker Compose, som lar deg definere og kjøre Docker-applikasjoner med flere containere.

Denne opplæringen klør knapt overflaten til Docker-økosystemet. I noen av våre neste artikler vil vi fortsette å dykke ned i andre aspekter av Docker. For å lære mer om Docker, sjekk den offisielle Docker-dokumentasjonen.

docker centos