Выбор ответа Junior Dockerfile и multi-stage обновлено

Что делает EXPOSE

Вопрос

Что делает инструкция EXPOSE 8080 в Dockerfile?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Документирует порт в метаданных образа; публикуют его через -p или -P. EXPOSE это метаданные: подсказка, какой порт слушает приложение.

Варианты ответа

  1. Публикует порт 8080 на всех интерфейсах хоста без флага -p
  2. Открывает порт 8080 во входящих правилах фаервола хоста
  3. Задаёт приложению переменную PORT=8080, чтобы оно слушало этот порт
  4. Документирует порт в метаданных образа; публикуют его через -p или -Pправильный ответ

Разбор

EXPOSE это метаданные: подсказка, какой порт слушает приложение. Публикует порт только docker run -p 8080:8080 (или -P, который публикует все EXPOSE-порты на случайные). Ни фаервол, ни настройки приложения EXPOSE не меняет.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.