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 հավելվածը, իսկ հետո միայն կոմպիլյացված բինարն է պատճենվում վերջնական պատկերի մեջ։