Sobes.tech
Назад к вопросам
Senior
3

Чем отличается COPY от ADD в Dockerfile?

Компании, где спрашивали
WildberriesWildberries

Ответ от нейросети

sobes.tech AI

В Dockerfile инструкции COPY и ADD используются для копирования файлов в образ, но имеют отличия:

  • COPY — просто копирует файлы и каталоги из контекста сборки в образ. Это более предсказуемая и рекомендуемая инструкция.

  • ADD — помимо копирования, умеет распаковывать локальные архивы (tar.gz, tar.bz2 и т.п.) автоматически и может копировать файлы по URL (скачивать их).

Из-за дополнительного поведения ADD иногда может привести к неожиданным результатам, поэтому если не нужны возможности распаковки или загрузки по URL, лучше использовать COPY.

Пример:

# Копируем локальный файл
COPY ./app /app

# Добавляем и распаковываем архив
ADD ./archive.tar.gz /app