Middle
14
Чем в Dockerfile отличаются директивы ADD и COPY?
Компании, где спрашивали
спектрум
Ответ от нейросети
sobes.tech AI
В Dockerfile директивы ADD и COPY используются для копирования файлов в образ, но имеют различия:
-
COPY— простая и предсказуемая команда, копирует файлы и каталоги из контекста сборки в образ. Не выполняет никаких дополнительных действий. -
ADD— более мощная, кроме копирования файлов, может:- Распаковывать локальные архивы (например, tar.gz) автоматически при копировании.
- Копировать файлы по URL (загружать из интернета).
Рекомендуется использовать COPY, если нужно просто скопировать файлы, и ADD — если нужна автоматическая распаковка или загрузка по URL.
Пример:
# Копируем локальный файл
COPY ./app /app
# Добавляем и распаковываем архив
ADD ./archive.tar.gz /app
# Загружаем файл по URL
ADD https://example.com/file.txt /app/