Я попытался выполнить следующую команду:
RUN if [ "$someargs" = "AAA" ]; then COPY from/ /usr/local/; fi
Я получил эту ошибку: This command returned a non-zero code: 127
This command returned a non-zero code: 127
Вы не можете сделать, внутри
RUN
Dockerfile
COPY
Вам нужно найти другой способ, у вас может быть скрипт, который создает другой Dockerfile на основе вашего теста.
Как говорится в сообщении об ошибке, COPY - это не команда оболочки, а инструкция docker, которая должна начинаться с новой строки.
Синтаксис - ИНСТРУКЦИЯ Аргументы
Вы можете использовать команду cp в Dockerfile. Однако для выполнения операции cp необходимо скопировать полную структуру каталогов в вашем образе. Я еще не пробовал это, но по логике это должно работать.
cp
Вы можете применить логику оболочки на вашем хосте и использовать docker cp для фактического копирования содержимого с / на хост в / из контейнера.
docker cp
Ссылка - https://docs.docker.com/engine/reference/builder/