Sobes.tech
Intern

Dockerде көп баскычтуу курулуш эмне жана эмне үчүн керек?

sobes.tech AI

AIден жооп

Docker'da çox mərhələli yığma, Docker görüntülərinin yaradılması üçün bir metod olub, bir Dockerfile daxilində bir neçə yığma mərhələsindən istifadə edir. Birinci mərhələlərdə tətbiq tərtib edilir və hazırlanır, son mərhələlərdə isə lazımsız alətlər və mənbə kodları olmadan minimal son görüntü formalaşır.

Nəyə görə lazımdır:

  • Nəticə görüntüsünün ölçüsünü kiçiltmək, çünki yalnız işlətmək üçün lazım olan fayllar daxil edilir.
  • Təhlükəsizliyi artırmaq, çünki yığma alətləri və mənbə kodları daxil edilmir.
  • Yığma prosesini sadələşdirmək, çünki bütün mərhələlər bir Dockerfile-də təsvir olunur.

Nümunə:

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"]

Burada əvvəlcə Go ilə tətbiq yığılır, sonra isə yalnız tərtib olunmuş ikili fayl son görüntüyə kopyalanır.