Можно ли реализовать сборку образа Docker без использования директивы FROM?

Директива FROM в Dockerfile указывает базовый образ, на основе которого строится новый образ.

Короткий ответ

Что ответить на собеседовании

Директива FROM в Dockerfile указывает базовый образ, на основе которого строится новый образ. Теоретически можно создать Docker-образ без использования FROM, но тогда образ будет пустым и не будет содержать ни операционной системы, ни каких-либо инструментов.

Подробный разбор

Ответ с пояснениями

Директива FROM в Dockerfile указывает базовый образ, на основе которого строится новый образ. Теоретически можно создать Docker-образ без использования FROM, но тогда образ будет пустым и не будет содержать ни операционной системы, ни каких-либо инструментов.

Такой подход называется "scratch" — это специальный пустой базовый образ. Его используют для создания минималистичных образов, например, для запуска статически скомпилированных бинарников.

Пример Dockerfile без FROM:

# Используем пустой образ scratch
FROM scratch

# Копируем статически скомпилированный бинарник
COPY myapp /myapp

# Запускаем приложение
CMD ["/myapp"]

Таким образом, можно собрать образ без стандартного базового слоя, но обычно это применяется для очень специфичных случаев.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее