Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Docker: Dockerfile, FROM, base image, container, image layers

Для чего используется Dockerfile директива FROM?

Вопрос проверяет понимание назначения директивы FROM в Dockerfile, которая является основой для создания образов.

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

Директива FROM в Dockerfile задает базовый образ, на основе которого строится новый образ. Она всегда должна быть первой инструкцией в Dockerfile. FROM указывает Docker, с какого образа начать сборку, например, FROM node:18 или FROM ubuntu:latest. Это позволяет переиспользовать готовые образы и добавлять поверх них свои слои.

Длинный ответ

Назначение директивы FROM

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

Как это работает

Каждый образ Docker состоит из набора слоев. Директива FROM подтягивает готовый образ из реестра (например, Docker Hub) и делает его первым слоем нового образа. Все последующие инструкции (RUN, COPY, CMD) добавляют новые слои поверх базового. Это позволяет эффективно кешировать слои и ускорять сборку.

Пример использования

# Используем официальный образ Node.js версии 18
FROM node:18

# Устанавливаем рабочую директорию
WORKDIR /app

# Копируем файлы проекта
COPY package*.json ./

# Устанавливаем зависимости
RUN npm install

# Копируем исходный код
COPY . .

# Запускаем приложение
CMD ["node", "index.js"]

Где применяется

FROM используется в любом Dockerfile, независимо от языка программирования или фреймворка. Это основа контейнеризации, позволяющая переиспользовать официальные образы (например, python:3.11, golang:1.21) или собственные кастомные образы.

Вывод

Директива FROM — это точка входа в создание Docker-образа. Она задает фундамент, на котором строится всё приложение. Использование правильного базового образа критически важно для безопасности, производительности и размера итогового образа.

Уровень

  • Рейтинг:

    5

  • Сложность:

    2

Навыки

  • Docker

    Docker

Ключевые слова

#Dockerfile

#FROM

#base image

#container

#image layers

Подпишись на Java Developer в телеграм