Выбор ответа Middle Секреты и управление ключами обновлено
Секрет в слое образа
Вопрос
В Dockerfile: COPY .env /app/.env, затем RUN rm /app/.env. Удалён ли секрет из образа?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Нет: файл остаётся в предыдущем слое образа и извлекается из него. Каждая инструкция создаёт слой, и удаление в следующем слое только прячет файл.
Варианты ответа
- Нет: файл остаётся в предыдущем слое образа и извлекается из негоправильный ответ
- Да: rm в следующей инструкции удаляет файл из всех слоёв образа
- Да, если образ собран без кеша и с флагом --no-cache у docker build
- Да, если образ хранится в приватном реестре с доступом по токену
Разбор
Каждая инструкция создаёт слой, и удаление в следующем слое только прячет файл. Любой, кто скачает образ, достанет его. Для секретов на этапе сборки есть RUN --mount=type=secret в BuildKit, а рантайм-секреты передаются при запуске. Приватный реестр снижает круг лиц, но не решает проблему.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.