Sådan installeres Docker på Raspberry Pi 4

How Install Docker Raspberry Pi 4



Sammenlignet med Raspberry Pi 3 har Raspberry Pi 4 masser af RAM (der er 2 GB, 4 GB og 8 GB modeller). Derfor kan Raspberry Pi 4 tjene som en billig Docker-løsning til appudvikling og andre opgaver. I denne artikel viser vi dig, hvordan du installerer Docker på Raspberry Pi 4. Vi bruger 8 GB -versionen af ​​Raspberry Pi 4, men du kan også bruge 2 GB -versionen eller 4 GB -versionen.

Docker er et containeriseringssystem til Linux, der bruges til at køre lette Linux -containere oven på et Linux -operativsystem (Docker -vært). For at installere Docker på din Raspberry Pi 4 skal du bruge følgende:







  1. En enkeltbrætcomputer fra Raspberry Pi 4
  2. En Raspberry Pi 4 Type-C strømforsyning.
  3. Et microSD -kort (mindst 32 GB) med Raspberry Pi OS -billedet på det.
  4. Internetforbindelse på Raspberry Pi 4.
  5. En bærbar eller stationær til VNC -adgang til fjernskrivebord eller SSH -adgang til Raspberry Pi 4.

Bemærk: Hvis du ikke vil have adgang til din Raspberry Pi 4 eksternt via SSH eller VNC, skal du slutte en skærm, et tastatur og en mus til din Raspberry Pi. Vi vil ikke forbinde nogen eksterne enheder til vores Raspberry Pi her, da vi eksternt forbinder vores Raspberry Pi 4 via VNC -fjernskrivebordsprotokollen med den hovedløse Raspberry Pi 4 -opsætning.



Yderligere ressourcer: For at lære, hvordan du installerer Raspberry Pi OS på din Raspberry Pi 4, skal du gå her: Sådan installeres Raspberry Pi OS på Raspberry Pi 4 . For at lære at blinke Raspberry Pi OS -billedet på microSD -kortet. gå her: Sådan installeres og bruges Raspberry Pi Imager. For at lære mere om den hovedløse opsætning af Raspberry Pi 4, gå her: Sådan installeres og konfigureres Raspberry Pi OS på Raspberry Pi 4 uden ekstern skærm.



Opdatering af Raspberry Pi OS

Inden du installerer Docker, skal du opdatere alle pakker på dit Raspberry Pi OS. For at gøre det skal du først opdatere APT -pakkelagringscachen med følgende kommando:





$sudopassende opdatering


Denne kommando skal opdatere APT -pakkens lagercache.


For at opdatere alle pakkerne på dit Raspberry Pi OS, skal du køre følgende kommando:



$sudopassende opgradering


For at bekræfte opgraderingen skal du trykke på OG og så .


APT -pakkehåndtereren skal downloade alle de nødvendige pakker fra internettet. Dette trin kan tage et stykke tid at fuldføre.


Når alle de nødvendige pakker er downloadet, skal APT -pakkehåndteringen installere dem en efter en. Dette trin kan også tage et stykke tid at fuldføre.


På dette tidspunkt skal alle de eksisterende pakker opdateres.


For at ændringerne skal træde i kraft, skal du genstarte din Raspberry Pi 4 med følgende kommando:

$sudogenstart

Installation af Docker på Raspberry Pi OS

Installation af Docker på en Raspberry Pi 4, der kører Raspberry Pi OS, er meget ligetil, da Docker nu officielt understøtter Raspberry Pi OS.

For at installere Docker på dit Raspberry Pi OS skal du downloade Docker -installations scriptet på din Raspberry Pi 4. Du kan downloade Docker installations scriptet på dit Raspberry Pi 4 med følgende kommando:

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


Docker -installations scriptet get-docker.sh skal downloades til din nuværende arbejdskatalog.


Kør Docker -installations scriptet get-docker.sh som root med følgende kommando:

$sudo bashget-docker.sh


Docker -installations scriptet vil downloade og installere alle de nødvendige pakker fra internettet. Dette trin kan tage et stykke tid at fuldføre.


På dette tidspunkt skal Docker installeres.


Når Docker er installeret, skal du tilføje din loginbruger til docker gruppe med følgende kommando:

$sudobrugerform-aGdocker $(hvem er jeg)


For at ændringerne skal træde i kraft, skal du genstarte din Raspberry Pi 4 med følgende kommando:

$sudogenstart


Når din Raspberry Pi 4 er startet, skal du køre følgende kommando for at kontrollere, om docker er installeret:

$docker -version


Som du kan se, kører jeg Docker version 19.03.13, som er den nyeste version af Docker, der er tilgængelig til Raspberry Pi OS i skrivende stund. Når du læser denne artikel, kan versionsnummeret ændre sig.

Installation af Docker Compose på Raspberry Pi OS

Docker komponere er et værktøj til automatisering af Docker -projekter ved hjælp af en YAML -fil.

Lad os sige, at du vil lave PHP -webudvikling ved hjælp af Docker. Til det har du brug for flere containere, f.eks. En webserver (dvs. php ) container og en databaseserver (dvs. mysql eller mongo ) beholder. Hvis du bruger RAW Docker, skal du starte, stoppe og konfigurere disse beholdere separat, hvilket vil være besværligt og tidskrævende. Hvis du derimod bruger Docker Compose, kan du administrere og konfigurere alle containere ved hjælp af en simpel YAML -fil og Docker Compose -kommandoer.

Du kan installere Docker Compose ved hjælp af Pythons pip -pakkeinstallationsprogram. Python -pip skal være forudinstalleret på din Raspberry Pi, men hvis pip ikke er installeret, kan du installere den fra det officielle pakkeopbevaringssted for Raspberry Pi OS med følgende kommando:

$sudopassendeinstallerepython3-pip-og


I vores tilfælde var Python pip allerede installeret.


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

$sudopip3installeredocker-komponere


På billedet herunder installeres Docker Compose.


I det følgende billede skal Docker Compose installeres.


Når Docker Compose er installeret, skal du kontrollere, om du kan få adgang til det med følgende kommando:

$docker-komponere version


Som du kan se, bruger vi Docker Compose version 1.27.4. Da du læste denne artikel, har du muligvis en senere version af Docker Compose installeret på dit Raspberry Pi OS.

Brug af Docker på Raspberry Pi 4

I dette afsnit viser vi dig, hvordan du bruger Docker på din Raspberry Pi 4. Hvis du aldrig har brugt Docker, skal dette afsnit hjælpe dig med at komme i gang.

For at køre en Docker -container skal du have et Docker -billede, som Docker -containeren vil være baseret på. Der er tusindvis af Docker -containere tilgængelige i Docker -containerregisteret (Docker Hub). Du kan søge efter Docker -containere (f.eks. Apache -webservercontainer) som følger:

$docker søg apache


Docker -containerne, der matcher søgeforespørgslen, returneres.

Den officielle Apache webserverbeholder kaldes httpd , som vist på skærmbilledet herunder. Lad os oprette en Docker -container baseret på det billede.


For at oprette og starte Apache -webserver -Docker -containeren ved hjælp af httpd Docker -billede, kør følgende kommando:

$docker løb-d -s 8080:80httpd

Bemærk: Her, -p 8080: 80 bruges til at videresende port 80 af httpd Docker -container til havn 8080 på Docker -værten (Raspberry Pi 4).


Det httpd Docker -billede skal downloades fra internettet (Docker Hub). Dette trin kan tage et stykke tid at fuldføre.


På dette tidspunkt, Docker httpd container image skulle have været downloadet, og en ny Docker container skulle have været oprettet.


Hvis du åbner en webbrowser i din Raspberry Pi 4 og besøger http: // localhost: 8080, skal du se følgende webside, der fortæller dig, at Apache -webserverbeholderen kører korrekt.


Du kan liste alle de kørende Docker -containere med følgende kommando:

$docker containerls

På nuværende tidspunkt har vi kun én kørende Docker -container, det vil sige Apache -webservercontaineren. Beholderen har navnet awesome_grothendieck (tilfældigt genereret) og ID c5d09470a9eb .


Docker -containerne, du opretter, får et tilfældigt genereret navn, men du kan navngive en Docker -container med -navn kommandolinjeargument. For eksempel at oprette en anden httpd Docker -beholder med navnet webserver2 , kan du køre følgende kommando:

$docker løb-d -s 8081:80 --navnwebserver2 httpd


Ved at indtaste ovenstående kommando, navngives en Docker -container webserver2 skulle oprettes.


Som du kan se, hedder den nyoprettede Docker -container webserver2 .

$docker containerls


Webserveren kører på den anden container webserver2 skal også være tilgængelig på URL'en http: // localhost: 8081.


Du kan stoppe en kørende Docker -container ved hjælp af navnet eller id'et på den kørende container. For eksempel at stoppe den kørende Docker -container webserver2 , kør følgende kommando:

$docker container stop webserver2


Docker -containeren webserver2 bør stoppes.

$docker containerls


Som du kan se, var webserveren, der kørte på webserver2 beholderen er også stoppet.


Du kan stoppe beholderen c5d09470a9eb med følgende kommando:

$docker container stop c5d09470a9eb


Som vist på billedet herunder, Docker -containeren c5d09470a9eb kører ikke længere.


Billedet herunder viser, at webserveren, der kørte på c5d09470a9eb beholderen er også stoppet.

Brug af Docker Compose på Raspberry Pi 4

I dette afsnit viser vi dig, hvordan du bruger Docker Compose til at administrere Docker -projekter.

Opret først et nyt projektmappe ~/webserver som følger:

$mkdir -v~/Webserver


Naviger til ~/webserver bibliotek som følger:

$CD~/Webserver


Opret en ny fil docker-compose.yaml som følger:

$nanodocker-compose.yaml


Indtast følgende tekst i filen docker-compose.yaml.

version:'3,8'
tjenester:
Web:
billede: httpd: seneste
genstart: altid
bind:
-./www:/usr/lokal/apache2/htdocs
havne:
-'8083: 80'

Bemærk: Sørg for at bruge den korrekte indrykning. Indrykning er meget vigtig for YAML -filer. Forkert indrykning vil resultere i syntaksfejl.

Når du er færdig, skal du trykke på + X efterfulgt af Y og for at gemme docker-compose.yaml fil.


Her i tjenester sektion, har vi definition for Web Docker container.


I linje 4, Docker billede at Web beholder, der skal bruges, skal defineres. Her er billede at bruge er httpd: seneste


I linje 5, genstart: altid bruges til at genstarte webcontaineren, hvis den stopper uventet.


Linier 6-7 bruges til at montere www/ bibliotek over dit projektmappe til /usr/local/apache2/htdocs dvs. beholderens webrod.


Linje 8-9 bruges til at videresende havn 80 af containeren til havn 8083 af Docker -værten (Raspberry Pi 4).


Opret et nyt bibliotek www/ i projektmappen som følger:

$mkdir -vwww


Opret en ny fil index.html i www/ bibliotek som følger:

$nanowww/index.html


Indtast følgende kommando, og tryk på + X efterfulgt af OG og for at gemme filen.


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

$docker-komponer op-d


Docker Compose -projektet skal være i gang.


Som du kan se, kører en webserverbeholder.

$docker-komponereps


Hvis du besøger URL'en http: // localhost: 8083 fra en webbrowser, skal du se den følgende side, hvilket betyder, at Docker Compose -projektet fungerer.


Hvis du vil stoppe Docker Compose -projektet (dvs. stoppe alle projektets containere), skal du køre følgende kommando:

$docker-komponer ned


Docker Compose -projektet skulle være stoppet.


Som du kan se, kører ingen containere.

$docker-komponereps


Derudover er der ikke adgang til webserveren.

Konklusion

I denne artikel installerede vi Docker og Docker Compose på Raspberry Pi 4. Desuden bruger vi Docker og Docker Compose til at oprette Docker -containere. Denne artikel skal hjælpe dig med at komme i gang med Docker og Docker Compose på Raspberry Pi 4.