awesome-everything EN
↑ Обратно к восхождению

Деплой и инфра

Image layers: тест на припоминание

Суть Вопросы на свободное припоминание по всему юниту. Сначала ответь своими словами, затем раскрой модельный ответ и сравни.
Высота — путь к senior
НольJuniorMiddleSenior
Ты на senior-высоте — в орбите
◷ 14 min

Припоминание сильнее перечитывания. На каждый вопрос проговори или запиши полный ответ по памяти, прежде чем открыть модельный — именно усилие припоминания закрепляет механизм, когда ты ревьюишь реальный Dockerfile.

Цель

Реконструируй ключевые механизмы юнита — кэш как префикс по содержимому, правило порядка, ужатие через multi-stage, компромиссы базовых образов и ловушку секрета в неизменяемом слое — не подглядывая в урок.

Вспомните перед уходом
  1. 01
    Что такое слой Docker-образа и по каким двум входам build cache ключует каждый слой?
  2. 02
    Сформулируй кардинальное правило порядка и объясни, почему COPY . . перед RUN npm ci рушит время сборки.
  3. 03
    Почему 'RUN apt-get update' и отдельный 'RUN apt-get install' отдают устаревшие пакеты, и как это исправить?
  4. 04
    Как multi-stage build ужимает образ и какие примерно дельты размера ожидать?
  5. 05
    Сравни distroless и alpine как базовые образы финального stage — когда тянуться за каждым?
  6. 06
    Почему удаление секрета в более позднем слое его не убирает, и что делать вместо этого?
Итог

Если ты смог реконструировать каждый ответ по памяти, ты держишь хребет юнита: слой — это diff с ключом по содержимому, кэш — строгий префикс, RUN ключуется по тексту, а не по эффекту, порядок от редко- к часто-меняющемуся держит дорогой install в кэше, multi-stage build компилирует жирно и отгружает тонко, distroless меняет shell на минимальную attack surface, а секрет, добавленный и затем rm’нутый, навсегда живёт в раннем слое — поэтому он не должен становиться слоем вообще.

Продолжить восхождение ↑Image layers: оптимизируй реальный Dockerfile
хоткеи развернуть
поиск
K
пред. пьеса
k
след. пьеса
j
тиры
t
это меню
?
sources3
expand
  1. 01
  2. 02
  3. 03

Trademarks belong to their respective owners. Editorial reference only.