Я пытаюсь построить образ из конвейера Jenkins:
stage("Build and Publish") {
steps {
withDockerRegistry(dockerCredentials) {
sh "pwd" // returns /var/lib/jenkins/workspace/my-project
sh "docker build -t='my-hub/my-project-indexer:${env.GIT_TAG}' indexer/"
sh "docker push my-hub/my-project-indexer:${env.GIT_TAG}"
sh "docker build -t='my-hub/my-project-web:${env.GIT_TAG}' web/"
sh "docker push my-hub/my-project-web:${env.GIT_TAG}"
}
}
}
Dockerfile
выглядит так:
FROM openjdk:8
RUN mkdir /logs && chown 1:1 -R /logs
WORKDIR /
USER user
ADD target/scala-2.11/indexer.jar /app/indexer.jar
VOLUME /logs
CMD [ "java", "-jar", "/app/indexer.jar" ]
Интересно, что шаг ADD
завершается неудачно со следующим сообщением- ADD failed: stat /opt/app/docker/tmp/docker-builder255975818/target/scala-2.11/indexer.jar: no such file or directory
.
Я не могу понять, почему докер использует папку /opt/app/docker/tmp/docker-builder...
, хотя я явно нахожусь в корневом каталоге проекта.Я новичок в Дженкинс и Докер, поэтому заранее извиняюсь за потенциально глупый вопрос.