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 танҳо қабати охиринро навсозӣ мекунад, қабатҳои қаблӣ аз кеш гирифта мешаванд.