2016-09-16 24 views
6

tôi cố gắng để xây dựng dự án của tôi bên trong một container Docker, hình ảnh trông như thế này:Issue với Jenkins kịch bản đường ống và Docker maven ảnh

FROM maven:3.3.9-jdk-8 
WORKDIR mvnBuildDir 
ENTRYPOINT ["mvn"] 

nếu tôi chạy container của tôi như dưới đây tất cả mọi thứ hoạt động tốt.

docker run -v /home/user/Worspace/myMavenProject:/mvnBuildDir myMaven3 clean package 

Nhưng nếu tôi cố gắng này trong tôi Jenkinsfile tôi có một lỗi mà là nói cho tôi gì cả. Jenkinsfile:

//... 
def maven = docker.image("myMaven3"); 
maven.inside("-v ${workdir}:/mvnBuildDir"){ 
    stage "build and test" 
    sh "mvn clean install" 
} 
//.. 

Lỗi:

[Pipeline] { 
[Pipeline] stage (build and test) 
Entering stage build and test 
Proceeding 
[Pipeline] sh 
[master] Running shell script 
+ mvn clean install -s mvnSettings.xml 
[Pipeline] } 
$ docker stop 1fc920c00b46a1038b0f39e2adc6e67f702d48ccf10d3e0bb3514d1cee3a795b 
$ docker rm -f 1fc920c00b46a1038b0f39e2adc6e67f702d48ccf10d3e0bb3514d1cee3a795b 
[Pipeline] // withDockerContainer 
[Pipeline] } 
[Pipeline] // withDockerRegistry 
[Pipeline] } 
[Pipeline] // withEnv 
[Pipeline] } 
[Pipeline] // node 
[Pipeline] End of Pipeline 
ERROR: script returned exit code -1 
Finished: FAILURE 

Có ai có một ý tưởng gì vấn đề là ở đây hoặc có ai một giải pháp làm thế nào để xây dựng dự án của tôi bên trong container Docker? Toàn bộ không gian làm việc của tôi được ánh xạ bên trong vùng chứa, do đó, vấn đề không phải là pom hay cái gì khác không được tìm thấy tôi nghĩ. Nếu tôi chạy 'mvn --version' tôi đã có được kết quả đúng. Cảm ơn cho đến nay.

Trả lời

-1

Khi sử dụng hình ảnh docker Tôi đã có hành vi mà lệnh kết thúc nhưng docker vẫn đang chạy, vì vậy tôi không có đầu ra.

Bạn có thể thử tấn gọi trình neo thông qua trình bao.

sh 'docker pull myMaven3'

sh 'docker run --rm -v ${workdir}:/mvnBuildDir myMaven3 clean install'

+0

Jenkins đường ống gắn kết mã nguồn vào container Docker qua một khối lượng. Tôi không nghĩ rằng điều này sẽ làm việc. –

Các vấn đề liên quan