сбой docker — build при копировании файла в root

#docker #dockerfile

#docker #dockerfile

Вопрос:

Я получаю ошибку сборки docker при попытке добавить сценарий оболочки в корневой каталог (/entrypoint.sh )

Dockerfile:

 FROM ubuntu:trusty
COPY ./entrypoint.sh /
ENTRYPOINT ["/entrypoint.sh"]
  

Вывод:

 Sending build context to Docker daemon 3.072 kB
Step 1 : FROM ubuntu:trusty
 ---> 1e0c3dd64ccd
Step 2 : COPY ./entrypoint.sh /
stat /var/lib/docker/aufs/mnt/5570570a77deddea426b95bd0f706beff4b5195a2fba4a8f70dcac4671bca225/entrypoint.sh: no such file or directory
  

Файл присутствует в корне контекста сборки, и когда я меняю / на подкаталог, такой как /opt /, он работает. Есть идеи, что может быть не так?

Комментарии:

1. COPY entrypoint.sh /

2. С вашим Dockerfile все в порядке — я только что создал изображение, используя его без проблем. Вы увидите эту ошибку, если попытаетесь COPY использовать полный исходный путь, потому что исходный код должен быть в контексте сборки, но относительные пути в порядке. Проверьте правильность имени вашего исходного файла?

3. @bjhaid Нет, все еще не работает

4. @EltonStoneman Да, файл с именем entrypoint.sh находится в том же каталоге, что и файл Dockerfile. Это также игрушечный пример, который я создал, потому что это происходило в другой сборке с другими именами файлов.

Ответ №1:

Оказывается, перезапуск демона решает проблему. Смотрите https://github.com/docker/docker/issues/25925.