Hvordan installere Docker på Raspberry Pi 4

Hvordan installere Docker på 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 containeriseringssystem for Linux som brukes til å kjøre lette Linux -containere på toppen av et Linux -operativsystem (Docker Host). For å installere Docker på Raspberry Pi 4, trenger du følgende:

  1. En bringebærpi 4-borddatamaskin
  2. En bringebær 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 PC eller Desktop for VNC Remote Desktop Access eller SSH -tilgang til Raspberry Pi 4.

Merk: Hvis du ikke vil få tilgang til Raspberry Pi 4 eksternt via SSH eller VNC, må du koble til en skjerm, et tastatur og en mus til Raspberry Pi. Vi vil ikke koble noen periferiutstyr til Raspberry Pi vår her, da vi kobler til Raspberry Pi 4 eksternt via VNC Remote Desktop Protocol med den hodeløse Raspberry Pi 4 -oppsettet.

Tilleggsressurser: For å lære hvordan du installerer Raspberry Pi OS på Raspberry Pi 4, gå hit: Hvordan installere Raspberry Pi OS på Raspberry Pi 4. For å lære å blinke Raspberry Pi OS -bildet på MicroSD -kortet. Gå hit: Hvordan installere og bruke Raspberry Pi Imager. For å lære mer om det hodeløse oppsettet av Raspberry Pi 4, gå hit: Hvordan installere og konfigurere Raspberry Pi OS på Raspberry Pi 4 uten ekstern skjerm.

Oppdatering av Raspberry Pi OS

Før du installerer Docker, bør du oppdatere alle pakker på Raspberry Pi OS. For å gjøre det, oppdater først Apt Package Repository Cache med følgende kommando:

$ sudo apt oppdatering


Denne kommandoen bør oppdatere den apt pakkelagde cache.


Hvis du vil oppdatere alle pakkene på Raspberry Pi OS, kjører du følgende kommando:

$ sudo apt oppgradering


For å bekrefte oppgraderingen, trykk Y og så .


Apt Package Manager skal 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 Package Manager 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 med følgende kommando:

$ sudo omstart

Installere Docker på Raspberry Pi OS

Å installere Docker på en Raspberry Pi 4 som kjører Raspberry Pi OS er veldig grei, da Docker nå offisielt støtter Raspberry Pi OS.

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

$ curl -fssl https: // få.Docker.com -o get -docker.sh


Docker -installasjonsskriptet Get-Docker.sh bør lastes ned til din nåværende arbeidskatalog.


Kjør Docker -installasjonsskriptet Get-Docker.sh som rot med følgende kommando:

$ sudo bash get-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, kan du legge til påloggingsbrukeren din til Docker Gruppe med følgende kommando:

$ sudo usermod -ag docker $ (whoami)


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

$ sudo omstart


Når Raspberry Pi 4 -støvlene dine, kjører følgende kommando for å bekrefte om Docker er installert:

$ Docker -versjon


Som du ser, 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 -komponering på Raspberry Pi OS

Docker komponerer 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 containere, for eksempel en webserver (i.e. PHP) Container og en databaseserver (i.e. mysql eller Mongo) Container. Hvis du bruker Raw Docker, må du starte, stoppe og konfigurere disse containerne hver for seg, noe som vil være plagsom og tidkrevende. I motsetning til dette, hvis du bruker Docker -komponering, kan du administrere og konfigurere alle containerne ved hjelp av en enkel YAML -fil og Docker -komponeringskommandoer.

Du kan installere Docker -komponering ved hjelp av Pythons PIP -pakkeinstallasjonsprogram. Python Pip skal forhåndsinstalleres på Raspberry Pi, men hvis PIP ikke er installert, kan du installere den fra det offisielle pakkelagdet til Raspberry Pi OS med følgende kommando:

$ sudo apt install python3 -pip -y


I vårt tilfelle var Python Pip allerede installert.


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

$ sudo pip3 installer docker-kompose


På bildet nedenfor blir Docker Compose installert.


I det følgende bildet skal Docker Componer installeres.


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

$ Docker-Compose-versjon


Som du ser, 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.

Bruker Docker på Raspberry Pi 4

I denne delen vil vi vise deg hvordan du bruker Docker på Raspberry Pi 4. Hvis du aldri har brukt Docker, skal 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 Container Registry (Docker Hub). Du kan søke etter docker containere (e.g., Apache Web Server Container) som følger:

$ Docker Search Apache


Docker -containerne som samsvarer med søket vil bli returnert.

Den offisielle Apache Web Server -beholderen heter httpd, Som vist på skjermbildet nedenfor. La oss lage en Docker -beholder basert på det bildet.


For å opprette og starte Apache Web Server Docker Container ved hjelp av httpd Docker -bilde, kjør følgende kommando:

$ docker run -d -p 8080: 80 httpd

Merk: Her, -P 8080: 80 er vant til å videresende port 80 av httpd Docker Container til port 8080 På Docker -verten (Raspberry Pi 4).


De httpd Docker -bildet skal lastes ned fra Internett (Docker Hub). Dette trinnet kan ta en stund å fullføre.


På dette tidspunktet Docker httpd Containerbilde skal ha blitt lastet ned, og en ny Docker -beholder skal ha blitt opprettet.


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


Du kan liste opp alle de løpende Docker -containere med følgende kommando:

$ docker container ls

For tiden har vi bare en løpende docker container, jeg.e., Apache Web Server Container. Beholderen har navnet Awesome_grothendieck (tilfeldig generert), og IDen C5D09470A9EB.


Docker -containerne du oppretter får et tilfeldig generert navn, men du kan navngi en Docker -beholder med -Navn Kommandolinje argument. For eksempel å lage en annen httpd Docker Container med navnet Webserver2, Du kan kjøre følgende kommando:

$ Docker Run -D -P 8081: 80 -Navn Webserver2 httpd


Ved å legge inn kommandoen ovenfor, en Docker -beholder som heter Webserver2 bør opprettes.


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

$ docker container ls


Webserveren som kjører på den andre beholderen Webserver2 Bør også være tilgjengelig på URL http: // localhost: 8081.


Du kan stoppe en løpende Docker -beholder ved hjelp av navnet eller IDen til den løpende beholderen. For eksempel for å stoppe den løpende dockerbeholderen Webserver2, Kjør følgende kommando:

$ docker container stopp webserver2


Docker -beholderen Webserver2 skal stoppes.

$ docker container ls


Som du ser, webserveren som kjørte på Webserver2 Beholderen har også stoppet.


Du kan stoppe containeren C5D09470A9EB med følgende kommando:

$ docker container stopp 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 -komponering på Raspberry Pi 4

I denne delen vil vi vise deg hvordan du bruker Docker Compose for å administrere Docker -prosjekter.

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

$ mkdir -v ~/webserver


Naviger til ~/Webserver Katalog som følger:

$ cd ~/webserver


Lag en ny fil Docker-Compose.Yaml følgende:

$ Nano Docker-Compose.Yaml


Skriv inn følgende tekst i Docker-Compose.YAML -fil.

Versjon: '3.8 '
tjenester:
Web:
Bilde: httpd: siste
Start på nytt: Alltid
Volum:
- ./www:/usr/local/apache2/htdocs
Porter:
- "8083: 80"

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

Når du er ferdig, trykk + X etterfulgt av y og For å redde Docker-Compose.Yaml fil.


Her, i tjenester seksjon, vi har definisjon for Web Docker Container.


På linje 4, Docker bilde at Web Container vil bruke skal defineres. Her, The bilde å bruke er httpd: siste


I linje 5, Start på nytt: Alltid brukes til å starte nettbeholderen på nytt hvis den stopper uventet.


Linjer 6-7 brukes til å montere www/ Katalog for prosjektkatalogen din til /usr/local/apache2/htdocs, Jeg.e., webroot av beholderen.


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


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

$ mkdir -v www


Lag en ny fil indeks.html i www/ Katalog som følger:

$ nano www/indeks.html


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


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

$ docker -compose up -d


Docker Compose -prosjektet skal være i gang.


Som du ser kjører en webserverbeholder.

$ Docker-Compose Ps


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


Å stoppe Docker Compose -prosjektet (i.e., Stopp alle containerne i prosjektet), kjør følgende kommando:

$ Docker-Compose Down


Docker Compose -prosjektet skal ha stoppet.


Som du ser er det ingen containere.

$ Docker-Compose Ps


I tillegg kan ikke webserveren nås.

Konklusjon

I denne artikkelen installerte vi Docker og Docker komponerte på Raspberry Pi 4. Videre bruker vi Docker og Docker -komponering for å lage Docker -containere. Denne artikkelen skal hjelpe deg i gang med Docker og Docker komponerer på Raspberry Pi 4.