Hvordan redusere docker -bildestørrelsen

Hvordan redusere docker -bildestørrelsen

Bilder er grunnlaget for Docker -plattformen og brukes til å behandle og vedlikeholde Docker -containere for prosjektdistribusjon. Det er basert på instruksjoner som forteller containeren hvordan du distribuerer eller utvikler prosjektet. Den inneholder også informasjon om viktige prosjektavhengigheter og installerer dem via kommandoer.

Docker -utviklere ønsker stort sett å redusere bildestørrelsen fordi bildestørrelsen kan være enorm for å kjøre små prosjekter og spare diskplass.

Denne oppskrivningen vil demonstrere:

  • Hvordan lage et Docker -bilde?
  • Hvordan redusere docker -bildestørrelsen?

Hvordan lage et Docker -bilde?

For å lage et nytt Docker -bilde, må brukerne lage Dockerfile. Bruk den deretter til å lage et nytt Docker -bilde. Gå gjennom prosedyren for å se hvordan du oppretter et Docker -bilde.

Trinn 1: Åpen terminal

Først åpner du “Git bash”Terminal fra Windows Start -menyen. Du kan også bruke favorittterminalen din til å utføre Docker -kommandoer:

Trinn 2: Lag ny katalog

Deretter lager du en ny katalog i "C”Kjør for å lage et Docker -bilde:

$ mkdir smallimage

Etter å ha opprettet en katalog, navigerer du til den ved å bruke "CD”Kommando:

$ CD Smallimage

Trinn 3: Lag dockerfile

Lag og åpne Dockerfile i Nano Text Editor ved hjelp av den nevnte kommandoen:

$ nano dockerfile

Lim inn følgende instruksjoner i “Dockerfile”. Disse instruksjonene vil utføre en enkel “Golang”Program på webserveren:

Fra Golang: 1.8 som byggherre
Workdir/go/src/app
Kopier Main.gå .
Run Go Build -o Webserver .
Cmd ["./Internett server"]

Trykk etter det "Ctrl+O”For å lagre filen og“Ctrl+x”For å forlate redaktøren:

Trinn 4: Bygg Docker -bilde

Nå, bygg det nye Docker -bildet ved å bruke “Docker Build”Kommando. “-t”Alternativ brukes til å lage et bilde ved navn:

$ docker build -t normalimage .

Trinn 5: Se Docker -bildestørrelsen

Etter å ha bygget Docker -bildet, sjekk ut bildestørrelsen gjennom den gitte kommandoen:

$ Docker Images NormalImage

Det kan observeres at størrelsen på bildet er “719MB”For et lite og enkelt prosjekt:

Hvordan redusere docker -bildestørrelsen?

For å redusere docker -bildestørrelsen, har vi listet opp noen kjente teknikker:

  • Hvordan redusere Docker -bildestørrelsen ved hjelp av Docker “-Squash”?
  • Hvordan redusere Docker -bildestørrelsen ved hjelp av multistage build?

Hvordan redusere Docker-bildestørrelsen ved hjelp av Docker “-Squash”?

Docker Build -Squash”Kommando brukes til å klemme Docker -laget og bygge Docker -bildet med minimum eller færre lag. For å redusere størrelsen på Docker -bildet gjennom Docker “-Squash”, Sjekk ut de medfølgende trinnene.

Trinn 1: Bygg Docker -bilde

Bygg Docker -bildet ved å bruke “-Squash”Alternativ for å klemme noen Docker -lag og lage et nytt Docker -bilde med færre lag:

$ docker build - -squash -t normalimage .

Trinn 2: Se bildestørrelsen

Sjekk størrelsen på Docker -bildet ved å utføre “Docker -bilde ”Kommando:

$ Docker Images NormalImage

Her kan du se størrelsen på bildet reduseres til “714MB”, Men fremdeles er Docker -bildet for stort for et enkelt prosjekt:

Hvordan redusere Docker -bildestørrelsen ved hjelp av multistage build?

Multistage Docker -bildet er en annen teknikk for å redusere docker -bildestørrelsen da det får avhengighetene og andre store prosjektpakker fra byggherrestadiet. For å redusere Docker -bildestørrelsen, endre Dockerfile til en multistage Dockerfile.

For dette formålet, gå gjennom de nevnte instruksjonene.

Trinn 1: Åpne Dockerfile

Først åpner du Dockerfile i Nano Text Editor ved å bruke den gitte kommandoen:

$ nano dockerfile

Trinn 2: Endre dockerfile til multistage dockerfile

Deretter endrer du Dockerfile -instruksjonen til flersteg gjennom nevnte kommandoer. “Alpine”Er den minste versjonen av ethvert Docker -bilde. Trykk etter det "Ctrl+O”For å lagre filen. For å forlate Nano -redaktøren, trykk “Ctrl+x”:

Fra Golang: 1.8 som byggherre
Workdir/go/src/app
Kopier Main.gå .
Run Go Build -o Webserver .
Fra alpine
WorkDir /App
Kopi -fra = byggherre/go/src/app//app/
Cmd ["./Internett server"]

Trinn 3: Bygg et Docker -bilde

Deretter bygger du Docker-bildet ved å bruke den nylig modifiserte flertrinns DockerFile ved hjelp av kommandoen nedenfor:

$ docker build -t normalimage .

Igjen, sjekk bildestørrelsen ved å bruke “Docker -bilder”Kommando:

$ Docker Images NormalImage

Det kan observeres at vi har redusert bildestørrelsen til bare “12.9MB”:

Dette innlegget har vist hvordan du kan redusere docker -bildestørrelsen.

Konklusjon

For å redusere bildestørrelsen, kan brukere enten bruke Docker “-Squash”Kommando eller bruke multistage dockerfile. For å redusere docker -bildestørrelsen gjennom Docker “-Squash”, Bruk“Docker Build -Squash -t .”Kommando. For å redusere størrelsen på bildet gjennom flerstegbygg, må du først endre Dockerfile til en multistage dockerfile, og utfør deretter "Docker Build -t ”Kommando for å lage et Docker -bilde. Dette innlegget har vist hvordan du kan redusere docker -bildestørrelsen.