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?
- Hvordan bygger man et Docker-billede fra Multistage Dockerfile?
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:
Å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:
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:
Indsæt følgende kode i ' Dockerfil ”, der vil instruere containeren om, hvordan projektet skal implementeres:
FRA golang: 1.8WORKDIR / gå / 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:
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:
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
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:
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:
WORKDIR / gå / src / app
COPY main.go .
LØB gå bygger -O Webserver .
FRA alpint
WORKDIR / app
KOPI --fra = base / gå / 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:
Igen, tjek de yderligere oplysninger om Docker-billedet gennem ' docker billeder kommando:
$ docker billeder new-web-imageOutputtet 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:
Å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