Проверяет понимание различия между сборкой образов и управлением несколькими контейнерами.
Dockerfile описывает, как собрать образ контейнера. Docker Compose используется для запуска и управления несколькими контейнерами одновременно. Compose позволяет описать сервисы, сети и тома в одном файле. Обычно Dockerfile используется внутри Compose.
Dockerfile и Docker Compose решают разные задачи в контейнеризации.
Dockerfile — это инструкция по сборке образа.
В нем описывается:
базовый образ
установка зависимостей
копирование файлов
команда запуска
Пример:
FROM python:3.11
WORKDIR /app
COPY . .
RUN pip install -r requirements.txt
CMD ["python", "app.py"]
Docker Compose — инструмент для запуска нескольких сервисов.
Пример:
services:
web:
build: .
db:
image: postgres
Он позволяет:
запускать несколько контейнеров
настраивать сети
подключать базы данных
Dockerfile:
описывает образ
работает на уровне одного контейнера
Docker Compose:
управляет группой контейнеров
описывает инфраструктуру сервиса
Dockerfile применяют:
при сборке приложения
Docker Compose применяют:
при локальной разработке
при запуске нескольких сервисов
Dockerfile отвечает за сборку образа, а Docker Compose — за запуск и управление набором контейнеров. Они используются вместе, а не вместо друг друга.