Thank you for reading this post, don't forget to subscribe!
Имеется Dockerfile
для билда образа Docker с Java-приложением:
1 2 3 4 5 6 |
FROM java:8 MAINTAINER User "user@domain.com" COPY eod-report-0.0.1-SNAPSHOT.jar /opt ENTRYPOINT ["/usr/bin/java", "-jar"] CMD ["/eod-report-0.0.1-SNAPSHOT.jar"] |
Во время билда на Go CD агенте — сборка падает с сообщением:
1 2 3 4 5 6 7 8 9 |
17:19:12.677 Sending build context to Docker daemon 17:19:12.719 Step 0 : FROM java:8 17:19:12.720 ---> c1ccce98b537 17:19:12.720 Step 1 : MAINTAINER User "user@domain.com" 17:19:12.870 ---> Using cache 17:19:12.870 ---> 54df967fb41b 17:19:12.870 Step 2 : COPY eod-report-0.0.1-SNAPSHOT.jar /opt 17:19:13.511 2015/11/09 17:19:13 stat /var/lib/docker/aufs/mnt/98f6c61bad68494918d738e6f9f44598c95ac8b385f63841d705612187c4d085/opt/eod-report-0.0.1-SNAPSHOT.jar: not a directory 17:19:13.624 [go] Current job status: failed. |
Проблема вызвана тем, что путь <dest>
в COPY
указан без закрывающего слеша — /opt
:
COPY eod-report-0.0.1-SNAPSHOT.jar /opt
В результате — Docker-демон считает <dest>
не каталогом — а файлом.
Редактируем:
COPY eod-report-0.0.1-SNAPSHOT.jar /opt/
после этого билд проходит нормально.