Docker COPY: нет такого файла или каталога

Я пытаюсь запустить сборку докеров, которая выполняет сборку maven.

Это мой Dockerfile:

FROM maven:3.5.4-jdk-8-slim

COPY * /myapp/src/

WORKDIR /myapp/src/

RUN mvn clean package

RUN ls -la target
RUN ls -la ./target

COPY ./target/myapp.jar ../
COPY config.yml ../

WORKDIR /myapp/

CMD ["java", "-jar", "myapp.jar"]

Проблема, которую я получаю, это

COPY failed: stat /var/snap/docker/common/var-lib-docker/tmp/docker-builder185918822/target/myapp.jar: no such file or directory

Я добавил два оператора ls для отладки, это результат:

...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:27 min
[INFO] Finished at: 2018-10-30T13:59:42Z
[INFO] ------------------------------------------------------------------------

Removing intermediate container 5c0f369c5f9d
 ---> d2b36b5070e3
Step 5/10 : RUN ls -la target
 ---> Running in 4de6062b1573
total 19104
drwxr-xr-x 4 root root     4096 Oct 30 13:59 .
drwxr-xr-x 5 root root     4096 Oct 30 13:59 ..
drwxr-xr-x 2 root root     4096 Oct 30 13:59 classes
drwxr-xr-x 2 root root     4096 Oct 30 13:59 maven-archiver
-rw-r--r-- 1 root root 19538983 Oct 30 13:59 myapp.jar
-rw-r--r-- 1 root root     3294 Oct 30 13:59 original-myapp.jar
Removing intermediate container 4de6062b1573
 ---> 47f4a7534ffb
Step 6/10 : RUN ls -la ./target
 ---> Running in 55c68b1fbbe9
total 19104
drwxr-xr-x 4 root root     4096 Oct 30 13:59 .
drwxr-xr-x 5 root root     4096 Oct 30 13:59 ..
drwxr-xr-x 2 root root     4096 Oct 30 13:59 classes
drwxr-xr-x 2 root root     4096 Oct 30 13:59 maven-archiver
-rw-r--r-- 1 root root 19538983 Oct 30 13:59 myapp.jar
-rw-r--r-- 1 root root     3294 Oct 30 13:59 original-myapp.jar
Removing intermediate container 55c68b1fbbe9
 ---> bbc8a395474c
Step 7/10 : COPY ./target/myapp.jar ../
COPY failed: stat /var/snap/docker/common/var-lib-docker/tmp/docker-builder185918822/target/myapp.jar: no such file or directory

Как видно из вывода обеих команд ls, файл jar присутствует. Почему докеру не удается его найти?

Это не в контексте хост-системы, который передается в сборку. Вы хотите вместо этого RUN cp?

David Maze 30.10.2018 15:23

Вы пробовали COPY target/myapp.jar ../ вместо COPY ./target/myapp.jar ../ ??

OscarAkaElvis 30.10.2018 15:44

@OscarAkaElvis Да, не работает.

BackSlash 30.10.2018 15:49

@DavidMaze Кажется, работает, спасибо!

BackSlash 30.10.2018 15:50
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
Как создать PHP Image с нуля
Как создать PHP Image с нуля
Сегодня мы создадим PHP Image from Scratch для того, чтобы легко развернуть базовые PHP-приложения. Пожалуйста, имейте в виду, что это разработка для...
1
4
2 516
0

Другие вопросы по теме