Slik installerer du Docker på Raspberry Pi 4

How Install Docker Raspberry Pi 4



Sammenlignet med Raspberry Pi 3 har Raspberry Pi 4 rikelig med RAM (det er 2 GB, 4 GB og 8 GB modeller). Derfor kan Raspberry Pi 4 tjene som en rimelig Docker-løsning for apputvikling og andre oppgaver. I denne artikkelen vil vi vise deg hvordan du installerer Docker på Raspberry Pi 4. Vi bruker 8 GB -versjonen av Raspberry Pi 4, men du kan også bruke 2 GB -versjonen eller 4 GB -versjonen.

Docker er et containersystem for Linux som brukes til å kjøre lette Linux -beholdere på toppen av et Linux -operativsystem (Docker -vert). For å installere Docker på Raspberry Pi 4 trenger du følgende:







  1. En enkeltbrettcomputer fra Raspberry Pi 4
  2. En Raspberry Pi 4 Type-C strømforsyning.
  3. Et microSD -kort (minst 32 GB) med Raspberry Pi OS -bildet på det.
  4. Internett -tilkobling på Raspberry Pi 4.
  5. En bærbar datamaskin eller skrivebord for VNC ekstern skrivebordstilgang eller SSH -tilgang til Raspberry Pi 4.

Merk: Hvis du ikke ønsker å få tilgang til Raspberry Pi 4 eksternt via SSH eller VNC, må du koble en skjerm, et tastatur og en mus til din Raspberry Pi. Vi vil ikke koble eksterne enheter til vår Raspberry Pi her, ettersom vi kobler til Raspberry Pi 4 eksternt via VNC -protokollen for eksternt skrivebord med det hodeløse Raspberry Pi 4 -oppsettet.



Tilleggsressurser: For å lære hvordan du installerer Raspberry Pi OS på Raspberry Pi 4, gå her: Slik installerer du Raspberry Pi OS på Raspberry Pi 4 . For å lære hvordan du blinker Raspberry Pi OS -bildet på microSD -kortet. gå her: Slik installerer og bruker du Raspberry Pi Imager. For å lære mer om det hodeløse oppsettet til Raspberry Pi 4, gå her: Slik installerer og konfigurerer du Raspberry Pi OS på Raspberry Pi 4 uten ekstern skjerm.



Oppdaterer Raspberry Pi OS

Før du installerer Docker, bør du oppdatere alle pakkene på Raspberry Pi OS. For å gjøre det må du først oppdatere APT -pakkens depotbuffer med følgende kommando:





$sudopassende oppdatering


Denne kommandoen skal oppdatere hurtigbufferen til APT -pakken.


For å oppdatere alle pakkene på Raspberry Pi OS, kjør følgende kommando:



$sudopassende oppgradering


Trykk på for å bekrefte oppgraderingen OG og så .


APT -pakkebehandleren bør laste ned alle nødvendige pakker fra internett. Dette trinnet kan ta en stund å fullføre.


Når alle nødvendige pakker er lastet ned, bør APT -pakkebehandleren installere dem en etter en. Dette trinnet kan også ta en stund å fullføre.


På dette tidspunktet bør alle eksisterende pakker oppdateres.


For at endringene skal tre i kraft, start Raspberry Pi 4 på nytt med følgende kommando:

$sudostarte på nytt

Installere Docker på Raspberry Pi OS

Det er veldig enkelt å installere Docker på en Raspberry Pi 4 som kjører Raspberry Pi OS, ettersom Docker nå offisielt støtter Raspberry Pi OS.

For å installere Docker på Raspberry Pi OS, må du laste ned Docker installasjonsskript på Raspberry Pi 4. Du kan laste ned Docker installasjonsskript på Raspberry Pi 4 med følgende kommando:

$krøll-fsSLhttps://get.docker.com-ellerget-docker.sh


Docker -installasjonsskriptet get-docker.sh skal lastes ned til din nåværende arbeidskatalog.


Kjør installasjonsskriptet for Docker get-docker.sh som root med følgende kommando:

$sudo bashget-docker.sh


Docker -installasjonsskriptet vil laste ned og installere alle nødvendige pakker fra internett. Dette trinnet kan ta en stund å fullføre.


På dette tidspunktet bør Docker installeres.


Når Docker er installert, legger du til påloggingsbrukeren til docker gruppe med følgende kommando:

$sudobrukerform-aGdocker $(hvem er jeg)


For at endringene skal tre i kraft, start Raspberry Pi 4 på nytt med følgende kommando:

$sudostarte på nytt


Når Raspberry Pi 4 starter, kjører du følgende kommando for å bekrefte om docker er installert:

$docker -versjon


Som du kan se, kjører jeg Docker versjon 19.03.13, som er den siste versjonen av Docker tilgjengelig for Raspberry Pi OS i skrivende stund. Når du leser denne artikkelen, kan versjonsnummeret endres.

Installere Docker Compose på Raspberry Pi OS

Docker komponere er et verktøy for å automatisere Docker -prosjekter ved hjelp av en YAML -fil.

La oss si at du vil gjøre PHP -webutvikling ved hjelp av Docker. For det trenger du flere beholdere, for eksempel en webserver (dvs. php ) container og en databaseserver (dvs. mysql eller mongo ) beholder. Hvis du bruker RAW Docker, må du starte, stoppe og konfigurere disse beholderne separat, noe som vil være plagsomt og tidkrevende. Hvis du derimot bruker Docker Compose, kan du administrere og konfigurere alle beholderne ved hjelp av en enkel YAML -fil og Docker Compose -kommandoer.

Du kan installere Docker Compose ved hjelp av Pythons pipepakkeinstallasjonsprogram. Python pip bør forhåndsinstalleres på Raspberry Pi, men hvis pip ikke er installert, kan du installere den fra det offisielle pakkelageret til Raspberry Pi OS med følgende kommando:

$sudopassendeinstallerepython3-pip-og


I vårt tilfelle var Python pip allerede installert.


Når Python pip er installert, kan du installere Docker Compose med følgende kommando:

$sudopip3installeredocker-komponere


På bildet nedenfor blir Docker Compose installert.


I det følgende bildet bør Docker Compose installeres.


Når Docker Compose er installert, må du kontrollere om du kan få tilgang til den med følgende kommando:

$docker-compose versjon


Som du kan se, bruker vi Docker Compose versjon 1.27.4. Når du leser denne artikkelen, kan det hende du har en senere versjon av Docker Compose installert på Raspberry Pi OS.

Bruke Docker på Raspberry Pi 4

I denne delen viser vi deg hvordan du bruker Docker på Raspberry Pi 4. Hvis du aldri har brukt Docker, bør denne delen hjelpe deg med å komme i gang.

For å kjøre en Docker -beholder trenger du et Docker -bilde som Docker -beholderen vil være basert på. Det er tusenvis av Docker -containere tilgjengelig i Docker -containerregisteret (Docker Hub). Du kan søke etter Docker -beholdere (f.eks. Apache webserverbeholder) som følger:

$docker søk apache


Docker -beholderne som samsvarer med søket blir returnert.

Den offisielle Apache webserverbeholderen kalles httpd , som vist på skjermbildet nedenfor. La oss lage en Docker -beholder basert på det bildet.


For å lage og starte Apache -webserver Docker -beholderen ved hjelp av httpd Docker -bilde, kjør følgende kommando:

$docker run-d -s 8080:80httpd

Merk: Her, -p 8080: 80 brukes til å videresende port 80 av httpd Docker -beholder til port 8080 på Docker -verten (Raspberry Pi 4).


De httpd Docker -bilde bør lastes ned fra internett (Docker Hub). Dette trinnet kan ta en stund å fullføre.


På dette tidspunktet, Docker httpd container image burde vært lastet ned, og en ny Docker container skulle ha blitt opprettet.


Hvis du åpner en nettleser i Raspberry Pi 4 og besøker http: // localhost: 8080, bør du se følgende webside som forteller deg at Apache -webserverbeholderen kjører riktig.


Du kan vise alle de kjørende Docker -beholderne med følgende kommando:

$dockerbeholderls

For tiden har vi bare én Docker -beholder som kjører, det vil si Apache -webserverbeholderen. Beholderen har navnet awesome_grothendieck (tilfeldig generert) og ID c5d09470a9eb .


Docker -beholderne du oppretter får et tilfeldig generert navn, men du kan navngi en Docker -beholder med -Navn kommandolinjeargument. For eksempel for å lage en annen httpd Docker -beholder med navnet webserver2 , kan du kjøre følgende kommando:

$docker run-d -s 8081:80 --Navnwebserver2 httpd


Ved å skrive inn kommandoen ovenfor, heter en Docker -beholder webserver2 bør opprettes.


Som du kan se, heter den nyopprettede Docker -beholderen webserver2 .

$dockerbeholderls


Webserveren som kjører på den andre beholderen webserver2 bør også være tilgjengelig på URL -adressen http: // localhost: 8081.


Du kan stoppe en Docker -beholder som kjører ved å bruke navnet eller ID -en til den kjørende beholderen. For eksempel for å stoppe den kjørende Docker -beholderen webserver2 , kjør følgende kommando:

$docker container stop webserver2


Docker -beholderen webserver2 bør stoppes.

$dockerbeholderls


Som du kan se, var webserveren som kjørte på webserver2 beholderen har også stoppet.


Du kan stoppe beholderen c5d09470a9eb med følgende kommando:

$docker container stop c5d09470a9eb


Som vist på bildet nedenfor, Docker -beholderen c5d09470a9eb kjører ikke lenger.


Bildet nedenfor viser at webserveren som kjørte på c5d09470a9eb beholderen er også stoppet.

Bruke Docker Compose på Raspberry Pi 4

I denne delen viser vi deg hvordan du bruker Docker Compose til å administrere Docker -prosjekter.

Opprett først en ny prosjektkatalog ~/webserver følgende:

$mkdir -v~/Internett server


Naviger til ~/webserver katalogen som følger:

$CD~/Internett server


Lag en ny fil docker-compose.yaml følgende:

$nanodocker-compose.yaml


Skriv inn følgende tekst i docker-compose.yaml-filen.

versjon:'3.8'
tjenester:
Internett:
bilde: httpd: siste
start på nytt: alltid
bind:
-./www:/usr/lokal/apache2/htdocs
porter:
-'8083: 80'

Merk: Sørg for å bruke riktig innrykk. Innrykk er veldig viktig for YAML -filer. Feil innrykk vil resultere i syntaksfeil.

Når du er ferdig, trykker du på + X etterfulgt av Y og for å lagre docker-compose.yaml fil.


Her, i tjenester delen, har vi definisjon for Internett Docker -beholder.


I linje 4, Docker bilde at Internett beholderen som skal brukes, bør defineres. Her, den bilde å bruke er httpd: siste


I linje 5, start på nytt: alltid brukes til å starte webbeholderen på nytt hvis den stopper uventet.


Linje 6-7 brukes til å montere www/ katalogen til prosjektkatalogen til /usr/local/apache2/htdocs , dvs. beholderens nettrot.


Linje 8-9 brukes til å videresende port 80 av beholderen til havn 8083 av Docker -verten (Raspberry Pi 4).


Lag en ny katalog www/ i prosjektkatalogen som følger:

$mkdir -vwww


Lag en ny fil index.html i www/ katalogen som følger:

$nanowww/index.html


Skriv inn følgende kommando og trykk + X etterfulgt av OG og for å lagre filen.


Du kan starte Docker Compose -prosjektet med følgende kommando:

$docker-komponer opp-d


Docker Compose -prosjektet skal være i gang.


Som du kan se, kjører en webserverbeholder.

$docker-komponereps


Hvis du besøker URL -adressen http: // localhost: 8083 fra en nettleser, bør du se følgende side, noe som betyr at Docker Compose -prosjektet fungerer.


For å stoppe Docker Compose -prosjektet (dvs. stoppe alle beholderne i prosjektet), kjør følgende kommando:

$docker-komponer ned


Docker Compose -prosjektet burde ha stoppet.


Som du kan se kjører ingen beholdere.

$docker-komponereps


I tillegg er det ikke tilgang til webserveren.

Konklusjon

I denne artikkelen installerte vi Docker og Docker Compose på Raspberry Pi 4. Videre bruker vi Docker og Docker Compose til å lage Docker -containere. Denne artikkelen skal hjelpe deg med å komme i gang med Docker og Docker Compose på Raspberry Pi 4.