PRO

Что такое Dockerfile? Какие основные инструкции знаете (FROM, RUN, CMD, COPY)?

Dockerfile — текстовый файл с инструкциями для автоматической сборки Docker image. Основные инструкции: FROM задаёт базовый image, RUN выполняет команду при сборке, COPY копирует файлы в image, а CMD задаёт команду по умолчанию при запуске контейнера.
Подробный ответ

Что такое Dockerfile

Dockerfile — это текстовый файл, который описывает шаги сборки Docker image. Docker читает инструкции по порядку и создаёт слои образа. Обычно файл называется Dockerfile и находится в корне проекта.

FROM

FROM задаёт базовый image, с которого начинается сборка. Как правило, Dockerfile начинается с этой инструкции.

FROM python:3.12-slim

RUN

RUN выполняет команду во время сборки image. Например, через него устанавливают системные зависимости или Python-пакеты.

RUN pip install --no-cache-dir fastapi uvicorn

COPY

COPY копирует файлы из build context внутрь image.

COPY . /app

CMD

CMD задаёт команду по умолчанию, которая будет выполнена при запуске контейнера. Пользователь может заменить её аргументами docker run.

CMD ["python", "main.py"]

Пример Dockerfile

FROM python:3.12-slim

WORKDIR /app

COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

COPY . .

CMD ["python", "main.py"]

Другие полезные инструкции

  • WORKDIR — задаёт рабочую директорию;

  • ENV — устанавливает переменную окружения;

  • EXPOSE — документирует порт приложения;

  • ENTRYPOINT — задаёт основной исполняемый файл контейнера.

Как ответить на собеседовании

Dockerfile описывает сборку image. FROM задаёт базовый образ, RUN выполняет команды на этапе сборки, COPY переносит файлы в image, а CMD задаёт команду по умолчанию при запуске контейнера.

Оцени свой прогресс

Честно оцени своё понимание этого вопроса, чтобы мы могли построить твой учебный трек максимально эффективно.
Читать в блоге