Выбор ответа Junior Секреты и Vault обновлено
Секрет в Dockerfile
Вопрос
В Dockerfile есть ENV DB_PASSWORD=s3cr3t, а в следующем слое ENV DB_PASSWORD=. Пароль в безопасности?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Нет: значение видно в истории слоёв и метаданных образа. Каждая инструкция оставляет след в метаданных образа, их видно через docker history.
Варианты ответа
- Нет: значение видно в истории слоёв и метаданных образаправильный ответ
- Да: последний ENV перезаписал значение во всех слоях
- Да, если образ хранится только в приватном реестре компании
- Да, если собрать с
--squash: промежуточные слои исчезнут
Разбор
Каждая инструкция оставляет след в метаданных образа, их видно через docker history. Приватный реестр сужает круг читателей, но образ скачивают многие системы. Для секретов при сборке есть RUN --mount=type=secret, а в рантайме секрет передают через переменные или файлы при запуске, не зашивая в образ.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.