Это журналы моей казни Дженкинса:
> Step 1/2 : FROM tomcat:9.0.4-jre8-alpine
---> 631138bc037d
Step 2/2 : COPY /Fatcat-1.0-SNAPSHOT.war /usr/local/tomcat/webapps/fatcat.war
---> Using cache
---> 700d13ec5fb5
Successfully built 700d13ec5fb5
>
> [Pipeline] dockerFingerprintFrom
>
> [Pipeline] }
>
> [Pipeline] // stage
>
> [Pipeline] sh
>
> [unFatCat_master-RSJASSVAHZJXKMANQQZOIIGTV3YC2D2GJS65WJ23OAY3WGXOVRJA]
> Running shell script
>
> + docker inspect -f . 3bf1d418c6b61a03e2f2abe9d37b4c5e759e0b0a
>
> . [Pipeline] withDockerContainer Jenkins does not seem to be running
> inside a container
>
> $ docker run -t -d -u 1000:1000 -w /data/jenkins_ws/unFatCat_master-RSJASSVAHZJXKMANQQZOIIGTV3YC2D2GJS65WJ23OAY3WGXOVRJA
> -v /data/jenkins_ws/unFatCat_master-RSJASSVAHZJXKMANQQZOIIGTV3YC2D2GJS65WJ23OAY3WGXOVRJA:/data/jenkins_ws/unFatCat_master-RSJASSVAHZJXKMANQQZOIIGTV3YC2D2GJS65WJ23OAY3WGXOVRJA:rw,z
> -v /data/jenkins_ws/unFatCat_master-RSJASSVAHZJXKMANQQZOIIGTV3YC2D2GJS65WJ23OAY3WGXOVRJA@tmp:/data/jenkins_ws/unFatCat_master-RSJASSVAHZJXKMANQQZOIIGTV3YC2D2GJS65WJ23OAY3WGXOVRJA@tmp:rw,z
> -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** 3bf1d418c6b61a03e2f2abe9d37b4c5e759e0b0a cat
> $ docker top f3826ded71315b33b4d352ac2181035655f73d58a7c998040db36b6d664f1421 -eo
> pid,comm
>
> [Pipeline] { [Pipeline] stage [Pipeline] { (Test) [Pipeline] sh
> [unFatCat_master-RSJASSVAHZJXKMANQQZOIIGTV3YC2D2GJS65WJ23OAY3WGXOVRJA]
> Running shell script
> + node --version /data/jenkins_ws/unFatCat_master-RSJASSVAHZJXKMANQQZOIIGTV3YC2D2GJS65WJ23OAY3WGXOVRJA@tmp/durable-f0e86b83/script.sh:
> line 1: node: Permission denied [Pipeline] }enter code here [Pipeline]
> // stage [Pipeline] }
> `$ docker stop --time=1`
> f3826ded71315b33b4d352ac2181035655f73d58a7c998040db36b6d664f1421
>
> $ docker rm -f f3826ded71315b33b4d352ac2181035655f73d58a7c998040db36b6d664f1421
>
> [Pipeline] // withDockerContainer [Pipeline] } [Pipeline] // node
> [Pipeline] End of Pipeline ERROR: script returned exit code 127
> Finished: FAILURE
Проблема в этой строке:
> [unFatCat_master-RSJASSVAHZJXKMANQQZOIIGTV3YC2D2GJS65WJ23OAY3WGXOVRJA] Running shell script
>
> + node --version
>
> > /data/jenkins_ws/unFatCat_master-RSJASSVAHZJXKMANQQZOIIGTV3YC2D2GJS65WJ23OAY3WGXOVRJA@tmp/durable-f0e86b83/script.sh:
> > line 1: node: Permission denied
Я хочу использовать локальное объявление-док докер.Это Dockerfile:
FROM node:7-alpine
FROM tomcat:9.0.4-jre8-alpine
COPY /Fatcat-1.0-SNAPSHOT.war /usr/local/tomcat/webapps/fatcat.war
Обратите внимание, я загружаю узел : 7-alpine в Docker, а не в конфигурацию Jenkins
Это мой Jenkinsfile:
pipeline {
agent { dockerfile true }
stages {
stage('Test') {
steps {
sh 'node --version'
sh 'mvn --version'
}
}
}
}
Я установил плагин Nodejs в Jenkins.
Это мои вопросы:
- Почему
node --version
не выполняется? - , почему сообщается об ошибке отказано ?
- Может ли быть проблема в том, что
node --version
не выполняется внутри контейнера?
Я уже проверил ошибку denied из этой ссылки ,Однако раздел монтируется с параметром exec.Поэтому предложенное решение для меня недействительно.