Sobes.tech
Middle+

Dockerдеги көп этаптуу курулуш деген эмне? Неге керек?

sobes.tech AI

AIден жооп

Docker'da көп этаптуу куруу бир 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"]