Docker er kjent for sin revolusjonerte utvikling, og i løpet av de siste årene har populariteten pigget mye. Før Docker og containere var distribusjonen og skaleringen en pokker for hodepine.
Det er tre metoder tilgjengelig på den offisielle dokumentasjonens webside av Docker for installasjon av Docker på CentOS 8 -operativsystemet.
Dette innlegget vil definitivt gå med den anbefalte og mest effektive måten å installere Docker på CentOS 8 -operativsystem.
Installasjon av Docker på CentOS 8 ved hjelp av depot
For å installere den nyeste versjonen av Docker på Centoos 8, før du begynner med installasjonen, må du sørge for at du ikke har en eldre versjon av Docker installert på CentOS 8 -operativsystemet.
Avinstaller gamle versjoner
For det første er det bedre å avinstallere Docker og Docker-Engine, som var de eldre versjonene av Docker. Så utfør kommandoen som er skrevet nedenfor for å fjerne/avinstallere Docker, Docker-motor og alle dens avhengigheter:
$ sudo dnf Fjern Docker Docker-Latest Docker-Engine Docker-Client Docker-Common Docker-Client-Latest Docker-Logrotate Docker-Latest-Logrotate
Hvis DNF ikke finner noen kamper for disse pakkene, er det helt greit.
Den nye Docker Engine-pakken heter Docker-CE, og installasjonsprosessen på CentOS 8 er grei.
Installere Docker
Selv om Docker er tilgjengelig i det offisielle DNF -pakkelageret for å laste ned og installere på CentOS 8, er det ikke den siste versjonen. For å installere den nyeste versjonen er det den beste metoden å installere Docker ved å legge det offisielle depotet til CentOS 8 -systemet.
Før du legger til depotet, må du oppdatere systemets pakkelager ved å bruke kommandoen:
$ sudo dnf check-update
Etter å ha oppdatert, hvis det er noen pakker for å oppgradere, kan du oppgradere dem ved å bruke kommandoen som er skrevet nedenfor:
$ sudo dnf oppgradering
Når alle systemets pakker er oppdatert, sett opp depotet. Dockers depot kan settes opp ved å legge depotet til systemets kilderliste.
Sett opp depotet
For å legge til ethvert depot i systemets kilderliste, er syntaks veldig enkel. Du kan bruke kommandoen gitt nedenfor for å legge Dockers depot til systemet:
$ sudo dnf config-manager-add-repo = https: // last ned.Docker.com/linux/centos/docker-ce.repo
Når Dockers depot er lagt til, kan du installere den siste tilgjengelige versjonen av Docker Engine på CentOS 8.
Installer Docker -motoren
Siden Dockers depot er lagt til systemet, er Dockers installasjon veldig enkel og enkel, akkurat som å installere en hvilken som helst annen pakke i CentOS 8. For å installere den nyeste versjonen av Docker rett fra Dockers depot, utfør kommandoen som er skrevet nedenfor:
$ sudo dnf installer docker -ce -nobest -allowerasing -y
I kommandoen ovenfor brukes alternativet "-nobest" til å slette de installerte pakkene for å løse avhengigheter. Alternativet "-allowerasing" brukes til å slette de installerte pakkene for å løse avhengigheter.
-Y -flagget er allerede lagt til installasjonskommandoen, så installasjonsprosessen vil ikke be noe. Du trenger ikke å skrive Y og treffe Enter for å fortsette installasjonsprosessen til Docker.
OK, på dette stadiet er Docker vellykket installert, men ikke klar til bruk. For å begynne å bruke Docker, må vi starte Docker -demonen. For å starte Docker -demonet på Centos 8, utfør kommandoen gitt nedenfor:
$ sudo systemctl start docker
Når Docker -demonet er startet, viser den ingen utgang. Du kan bekrefte at den kjører eller ikke ved å sjekke statusen til Docker -demonen.
For å bekrefte statusen til Docker -demonet, kjør kommandoen som er skrevet nedenfor ::
$ sudo systemctl status docker
I output -skjermbildet vedlagt nedenfor, kan du være vitne til at tjenesten er aktiv og kjører.
Til slutt, i stedet for å starte Docker -demonet hver gang, hvorfor gjør vi ikke at Docker -demonen på systemstøtten starter på oppstartstidspunktet. For å starte Docker -demonen automatisk på oppstartstiden, kjør kommandoen:
$ sudo SystemCTL Enable Docker
På dette stadiet er Docker installert, og Docker-Daemon startes; Du har Docker-kommandolinjeverktøyet der du kan bruke Docker og utføre Docker-relaterte oppgaver. La oss lære den grunnleggende bruken av Docker på CentOS 8 -operativsystem.
Bruk av Docker-kommandolinjeverktøyet
Etter å ha fullført installasjonen av Docker, la oss grave i bruken og lære om Docker-kommandolinjeverktøyet.
Syntaksen ved å skrive Docker -kommandoen er:
$ docker [alternativ] [kommando] [argumenter]
For å vite om alle tilgjengelige alternativer og kommandoer, kjør bare Docker -kommandoen i terminalen din og treff Enter:
$ docker
Arbeid med Docker -bilder
Docker har et register kjent som Docker Hub, der alle Docker -bildene er lagret. Et Docker -bilde inneholder applikasjonen og dens avhengighetsprogramvare sammen med noen andre nødvendige biblioteker. Fra Docker Hub kan vi trekke ethvert Docker -bilde tilgjengelig, og ved å bruke disse Docker -bildene kan Docker -containere kjøre på Docker -plattformen.
Det er ingen begrensning av bygging og hosting av Docker -bilder på Docker Hub. På Docker Hub kan enhver person være vertskap for Docker -bildet.
La oss prøve å få tilgang til, laste ned og kjøre et "Hello-World" Docker-bilde fra Docker Hub og se om det fungerer eller ikke. For å laste ned og kjøre et Docker -bilde fra Docker Hub, utfør Docker -kommandoen med underkommanden, som skrevet nedenfor:
$ sudo docker run hello-world
Du kan vitne.
Tilsvarende, hvis du ikke vet om et Docker -bilde av behovet ditt eksisterer i Docker Hub eller ikke, kan du søke etter det. For eksempel, for å søke etter et "centos" docker -bilde fra Docker Hub, utfør Docker -kommandoen med Subcommand -søket, som vist nedenfor:
$ sudo docker search centos
Kommandoen ovenfor vil søke etter strengen “Centos” fra hele Docker Hub og hente alle Docker -bildene som inneholder denne strengen i navnene deres og viser resultatet på terminalen din:
I ovennevnte skjermbilde kan du se at vi har alle Docker-bildene, beskrivelsene og stjernene som inneholder "centos" i navnet sitt.
Etter å ha funnet Docker -bildet av behovet ditt, kan du få/laste ned det bildet ved å utføre Docker -kommandoen ved hjelp av underkommando -trekket, som vist nedenfor:
$ sudo docker pull centos
Når et bilde er trukket med suksess, kan du ganske enkelt kjøre det ved å bruke SUM -underkommando:
$ sudo docker run centos
For å liste opp alle Docker -bildene i systemet ditt, skriv den enkle kommandoen gitt nedenfor i terminalen din:
$ sudo docker bilder
Du kan være vitne til i utdataene om at “Hello-World” og “Centos” -bilder er listet ut.
Etter å ha forstått hele konseptet med Docker -bilder, la oss lære litt om Docker -containere.
Kjører en Docker -beholder
Siden Docker-containere er akkurat som virtuelle maskiner og de er mye interaktive og ressursvennlige. Nylig kjørte vi en "Hello-World" -beholder, som viser Hello World Message and Exits.
La oss nå prøve å kjøre en annen container med centos -bildet som vi nettopp har lastet ned. For å kjøre beholderen med CentOS -bilde, kjør kommandoen:
$ sudo docker run -it centos
I kommandoen ovenfor brukte vi -Det -bryterne, som vil gi oss tilgang til et interaktivt skall i beholderen.
Som du kan se på skjermbildet festet ovenfor, er vi i Docker -beholderens skall nå, og 163e7ed6525f er container -ID.
Uansett hva kommandoen vi vil utføre, vil den bli utført inne i beholderen. Hvis vi for eksempel vil laste ned og installere MySQL i beholderen, trenger vi bare å kjøre “DNF Install @Mysql” -kommandoen uten engang å skrive sudo i starten av kommandoen fordi vi er logget inn som rotbruker:
# dnf install @mysql
Du kan være vitne til at installasjonen av MySQL inne i en beholder er begynt.
Skriv inn 'y' for å importere GPG -nøkler og treff Enter for å fortsette installasjonsprosessen til MySQL inne i beholderen.
På dette stadiet kan du være vitne til at MySQL er installert med hell.
Etter å ha gjort ønskede endringer i beholderen, må du definitivt begå endringene i en Docker -beholder til et Docker -bilde.
Begå endringer
Til nå blir endringene som vi har gjort, som å installere MySQL, nettopp brukt på beholderen. Imidlertid, hvis vi feilaktig glemmer å lagre endringer, vil alt definitivt gå tapt.
Etter å ha installert mysql inne i en beholder, for å lagre beholderen som et nytt bilde, må du først gå ut fra beholderen du er til stede.
For å lagre endringene som vi har utført i en beholder, avslutter du fra den ved hjelp av kommandoen som er skrevet nedenfor:
# exit
Etter å ha gått ut av beholderen, utfør Docker Commit -kommandoen for å begå endringene til et nytt Docker -bilde. Syntaksen for å begå endringer er som følger:
$ sudo docker commit -m "endringer som du gjorde" -a "forfatternavn" container -id repository/new_image_name
I syntaks ovenfor:
“-m”Er for forpliktelsesmelding som forklarer hva du gjorde og hvilke endringer gjorde du,
“-en”Er for forfatternavnet som begår disse endringene,
“Container-id”Er IDen til beholderen som vi nettopp har sett i containerskallet,
Til slutt, gi "depotnavn.”Oppgavens navn kan ethvert nytt navn du vil gi; Det er et nytt bildenavn.
For eksempel:
For å begå endringene vi gjorde nylig, ville Docker Commit -kommandoen gå slik:
$ sudo docker commit -m "la til mysql" -a "John doe" 163e7ed6525f centos
Når endringene er begått, vil det bli opprettet et nytt bilde på CentOS -operativsystemet.
Du kan vise bildene på CentOS -operativsystemet ditt ved hjelp av Docker Images -kommandoen:
$ sudo docker bilder
Du kan være vitne til output -skjermbildet vedlagt ovenfor; Et nytt Docker -bilde med CentOS er opprettet for 4 minutter siden og oppført i Docker -bildelisten. Du kan også se økningen i bildets størrelse sammenlignet med det eldre centos -bildet. Økningen i størrelsen på bildet skyldes definitivt endringene vi nylig har gjort i containeren (installasjon av MySQL).
Fra nå av, når du må kjøre en container med MySQL, kan du bruke det siste Centos -bildet.
Oppføring av Docker -containere
Vi har nettopp listet opp Docker -bildene; Vi kan liste docker -containerne også. Det kan være to stater av containere i Docker:
For å vise/liste ned de aktive dockerbeholderne, utfør kommandoen gitt nedenfor:
$ sudo docker ps
For å vise/liste ned alle Docker -containerne, utfør Docker PS -kommandoen med -A -flagget:
$ sudo docker ps -a
Hvis du vil stoppe en aktiv beholder, kan du bare utføre Docker -kommandoen med underkommandusstopp og container -ID som vist nedenfor:
$ sudo docker stop container-id
Skyve Docker -bilde
Det siste du trenger å lære er å skyve et Docker -bilde til Docker Hub og dele det.
For å skyve eller laste opp et Docker -bilde på Docker Hub, må du først ha en konto på Docker Hub. Hvis du ikke har noen konto, kan du registrere deg og opprette en; Ellers er du klar til å gå videre for å skyve et Docker -bilde hvis du allerede har en konto.
For å skyve et bilde, først, logg inn på Docker Hub ved å bruke kommandoen som er skrevet nedenfor:
$ Docker Login -u Docker-Registry-Brukername
Skriv inn passordet til Docker -huben din, og hvis passordet du skrev inn er riktig, vil du bli logget inn og skyve Docker -bildet etter eget valg.
For å skyve et bilde, utfør den undergitte Docker-kommandoen med underkommandus-push og docker-bildens navn:
$ Docker Push Docker-Registry-Brukername/Docker-Image-Name
Opplasting av Docker-bildet vil ta tidsbasert på størrelsen på bildet:
Pushed Docker -bildet vil bli oppført på dashbordets side på Docker Hub -kontoen din, og du kan bekrefte det derfra.
I motsetning til dette, hvis du ikke kan skyve et Docker -bilde til Docker Hub, er du definitivt ikke logget riktig. Prøv å logge inn igjen og skyve Docker -bildet.
Konklusjon
Dette innlegget inneholder en komplett trinn-for-trinn og dyp guide på en Docker og hvordan du installerer og setter opp Docker på CentOS 8-operativsystemet. I dette innlegget har vi lært å installere Docker ved å legge Dockers depot til Centos 8 -systemet og installere den nyeste versjonen av Docker.
Vi har lært den grunnleggende, men likevel detaljerte bruken av Docker. Vi har lært om Docker -bilder, Docker -containere, hvordan du kan trekke et Docker -bilde fra Docker Hub, hvordan du kjører en Docker -beholder, hvordan du kan begå endringer av en container til et Docker -bilde, og til slutt hvordan du skyver et Docker -bilde til Docker Hub for å dele det med det internasjonale samfunnet.