Sobes.tech
Junior — Middle

Оё метавонед шарҳи кунед, ки дар Docker чӣ гуна қабат аст ва чаро барои контейнерикунонӣ муҳим аст?

sobes.tech AI

Ҷавоб аз AI

Дар Docker, қабат — ин сатҳи ҷудогонаи системаи файлҳо мебошад, ки ҳангоми иҷрои ҳар як дастур дар Dockerfile (масалан, RUN, COPY, ADD) эҷод мешавад. Ҳар як қабат тағиротҳоро нисбат ба қабати қаблӣ дорад.

Арзиши қабатҳо:

  • Самаранокии нигоҳдорӣ: Қабатҳо кеш мешаванд ва метавонанд байни тасвирҳои гуногун такрор истифода шаванд, ки ҷойро сарфа мекунад ва сохтани онро суръат мебахшад.
  • Сохтани зуд: Вақте ки Dockerfile тағир дода мешавад, танҳо қабатҳои тағирёфта навсозӣ мешаванд, дигарон аз кеш гирифта мешаванд.
  • Изолятсияи тағиротҳо: Ҳар як қабат маҷмӯи алоҳидаи тағиротҳо мебошад, ки идоракунӣ ва баргардониро осон мекунад.

Масалан, агар шумо Dockerfile дошта бошед:

FROM ubuntu:20.04
RUN apt-get update
RUN apt-get install -y curl
COPY . /app

Ҳар як дастур қабати алоҳида эҷод мекунад. Агар танҳо мазмуни папкаи /app-ро тағир диҳед, Docker танҳо қабати охиринро навсозӣ мекунад, қабатҳои қаблӣ аз кеш гирифта мешаванд.