Sobes.tech
Intern

Ի՞նչ է Docker-ում բազմաբնակարան կառուցումը և ինչու է դա անհրաժեշտ:

sobes.tech AI

Պատասխան AI-ից

Դոկերի բազմաբնակարան կառուցվածքը՝ դա մեթոդ է, որը օգտագործում է մի քանի շերտեր կառուցելու համար մեկ Dockerfile-ում: Առաջին շերտերում կատարվում է հավելվածի կոմպիլացիան և պատրաստումը, իսկ վերջին շերտերում ձևավորվում է նվազագույն վերջնական պատկերը առանց ավելորդ գործիքների և աղբյուրային կոդի:

Ինչու է դա անհրաժեշտ:

  • Վերջնական պատկերի չափի նվազեցում, քանի որ միայն անհրաժեշտ ֆայլերը են մտնում:
  • Անվտանգության բարձրացում, քանի որ կառուցման գործիքները և աղբյուրային կոդը չեն մտնում:
  • Բաղադրատոմսի պարզեցում, քանի որ բոլոր շերտերը նկարագրված են մեկ Dockerfile-ում:

Օրինակ՝

FROM golang:1.20 AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp

FROM alpine:latest
COPY --from=builder /app/myapp /usr/local/bin/myapp
CMD ["myapp"]

Այստեղ առաջինը կառուցվում է Go հավելվածը, իսկ հետո միայն կոմպիլյացված բինարն է պատճենվում վերջնական պատկերի մեջ։