En begyndervejledning til en flertrins Docker-bygning

En Begyndervejledning Til En Flertrins Docker Bygning



Docker multi-stage build er processen med at specificere en række builds i en Dockerfile. Med andre ord, Dockerfilen indeholder flere ' FRA ”-sætninger i en enkelt fil, og den nye fra-sætning bruger forskellige eller tidligere basisinstruktioner. Flertrinsopbygningen gør det muligt for udviklere at nedbryde udviklingsprocessen i flere trin. Desuden omtales basisinstruktionen som installations- eller opsætningsinstruktioner, og andre instruktioner bruger afhængigheder af basisinstruktionen for at fungere korrekt.

Denne opskrivning vil give en guide til en flertrins Docker-build.

En begyndervejledning til en flertrins Docker-bygning

For at skabe et Docker-billede gennem simple Dockerfile og flertrins Dockerfile-bygninger, skal du tage et kig på de anførte metoder:







Hvordan bygger man et simpelt Docker-billede?

For at oprette et simpelt Docker-billede ved hjælp af en simpel Dockerfil, skal du gennemgå de givne instruktioner.



Trin 1: Åbn Terminal
Fra Windows ' Start op ”-menuen skal du åbne Git-terminalen:







Trin 2: Opret ny mappe
Opret derefter en ny projektmappe ved hjælp af den givne kommando:

$ mkdir Flertrins



Åbn derefter projektmappen ved hjælp af ' cd kommando:

$ cd Flertrins

Trin 3: Opret programfil
Opret og åbn en ny programfil for at implementere ' golang ' program. For eksempel har vi lavet en ' main.go ' fil:

$ nano main.go

Indsæt den medfølgende kode i ' main.go ' fil. Dette program vil udskrive det simple output ' Hej! Velkommen til LinuxHint Tutorial ” på den lokale vært:

importere (
'fmt'
'log'
'net/http'
)

func handler ( w http . ResponseWriter , r * http. Anmodning ) {
fmt . Fprintf ( i , 'Hej! Velkommen til LinuxHint Tutorial' )
}
func vigtigste () {
http . HandleFunc ( '/' , handler )
log . Fatal ( http . ListenAndServe ( '0.0.0.0:8080' , nul ))
}

Tryk på ' CTRL+O ' for at gemme ændringerne og ' CTRL+X ' At forlade.

Trin 4: Opret DockerFile
Opret og åbn en ny Dockerfile i Nano-teksteditoren ved hjælp af ' nano dockerfil kommando:

$ nano Dockerfil

Indsæt følgende kode i ' Dockerfil ”, der vil instruere containeren om, hvordan projektet skal implementeres:

FRA golang: 1.8
WORKDIR / / src / app
COPY main.go .
LØB gå bygger -O Webserver .

CMD [ './Webserver' ]

Tryk på ' CTRL+O ' for at gemme filen og ' CTRL+X ” for at afslutte editoren:

Trin 5: Opret Docker-billede
Med hjælp fra Dockerfile kan du oprette et nyt Docker-billede gennem ' docker bygning ” kommando. Det ' -t ” tag bruges til at angive billedmærket/navnet:

$ docker bygning -t nyt-web-billede.

Trin 6: Kør Docker Image
Når du har oprettet Docker-billedet, skal du bruge nedenstående kommando til at køre Docker-billedet. Det ' -s ”-indstillingen bruges til at angive portnummeret, hvor Docker-beholderen vil udføre programmet:

$ docker-løb -s 8080 : 8080 nyt-web-billede

Derefter skal du navigere til ' http://localhost:8080 ' for at kontrollere, om applikationen kører eller ej:

Fra ovenstående output kan du se, at vi med succes har implementeret applikationen på localhost:

Trin 7: Tjek Docker-billeder
Til sidst skal du udføre ' docker billeder ” kommando for at kontrollere de yderligere oplysninger om det nyoprettede Docker-billede:

$ docker billeder new-web-image

Det kan observeres, at størrelsen af ​​Docker-billedet er for stor til at udføre det lille projekt. I et sådant scenarie kan flertrinsopbygningen bruges til at reducere Docker-billedstørrelsen:

Hvordan bygger man et Docker-billede fra Multistage Dockerfile?

For at oprette en flertrins Dockerfile for at nedbryde udviklingsprocesserne i trin og reducere billedstørrelsen, skal du tage et kig på de medfølgende trin.

Trin 1: Åbn Dockerfile
Åbn først Dockerfilen i ' Nano tekst editor ” gennem den nævnte kommando:

$ nano Dockerfil

Trin 2: Opret Multistage Dockerfile
Indsæt følgende kode i Dockerfile. Det kan bemærkes, at Docker-filen indeholder mere end én ' FRA ”-erklæring, hvilket betyder, at vi opretter en flertrins Dockerfile:

FRA golang: 1.8 AS base
WORKDIR / / src / app
COPY main.go .
LØB gå bygger -O Webserver .

FRA alpint
WORKDIR / app
KOPI --fra = base / / src / app / app /
CMD [ './Webserver' ]

Tryk på ' CTRL+O ' for at gemme ændringer og ' CTRL+X ” for at afslutte editoren.

Trin 3: Opret Docker-billede
Byg nu det nye Docker-image ved hjælp af en flertrinsopbygning. Til dette formål skal du udføre den givne kommando:

$ docker bygning -t nyt-web-billede.

Igen, tjek de yderligere oplysninger om Docker-billedet gennem ' docker billeder kommando:

$ docker billeder new-web-image

Outputtet viser, at vi med succes har oprettet en docker-fil, og størrelsen på Docker-filen er reduceret til kun ' 12,9 MB ”:

Trin 4: Kør Docker Image
Til sidst skal du køre Docker-billedet for at udføre containeren for at kontrollere, om Docker-billedet fungerer korrekt eller ej:

$ docker-løb -s 8080 : 8080 nyt-web-billede

Åbn den lokale værtsserver ved at navigere til ' http://localhost:8080 ” på browseren:

Outputtet viser, at vi med succes har implementeret programmet gennem en flertrins build.

Konklusion

Docker multistage build specificerer rækken af ​​builds i faser. For at oprette en flertrins Dockerfile skal du angive mere end én 'FROM'-sætning og henvise til den første ' FRA ”-udsagn som basisbygning. Derefter skal du oprette et nyt Docker-billede ved hjælp af ' docker build -t . ” kommando. Indlægget har udarbejdet en komplet guide til en flertrins Docker-build.