Sobes.tech
Senior

Маъзулоти бисёрмарҳила дар Docker чист?

sobes.tech AI

Ҷавоб аз AI

Билд бо бисёрмарҳила дар Docker — ин техникаест, ки имкон медиҳад, ки дар як Dockerfile чанд марҳилаи сохтмон эҷод шавад, ки ҳар як марҳила метавонад аз модели асосии худ истифода барад. Нақшаи асосӣ — ҷудо кардани марҳилаҳои сохтмон (масалан, компилятсия, насб кардани вобастагиҳо) аз образи ниҳоӣ, то дар контейнери ниҳоӣ танҳо файлҳои зарурӣ барои иҷрои барнома боқӣ монанд, бе асбобҳо ва артефактҳои иловагӣ.

Ин андозаи образи ниҳоиро ба таври назаррас кам мекунад ва бехатариро баланд мебардорад, зеро дар контейнери ниҳоӣ асбобҳои сохтмон вуҷуд надоранд.

Масалан, Dockerfile бо бисёрмарҳилавии сохтмон:

# Марҳилаи сохтмон
FROM node:18 AS builder
WORKDIR /app
COPY package.json package-lock.json ./
RUN npm install
COPY . .
RUN npm run build

# Марҳилаи ниҳоӣ
FROM nginx:alpine
COPY --from=builder /app/build /usr/share/nginx/html

Ин ҷо аввал барномаи React сохта мешавад, сипас танҳо файлҳои статикӣ ба образи сабук nginx кӯчонида мешаванд.