我正在将jenkins主服务器和从服务器作为docker容器运行。我已经使用标签为'worker'的jenkins / ssh-slave映像设置了一个从节点。我可以在工作程序节点上成功运行管道。但是,当我尝试使用Jenkinsfile运行docker build命令时,出现错误docker: not found
。
pipeline {
agent { label 'worker' }
tools {nodejs "node"}
stages {
stage ('Build APP') {
steps {
echo 'BUILDING APPLICATION'
sh 'npm install'
}
}
stage ('Create Package') {
steps {
script{
echo 'BUILDING DOCKER IMAGE'
docker.build("package${env.BUILD_NUMBER}")
}
}
}
stage('Package Test') {
agent { docker }
steps {
echo 'RUNNING IMAGE IN CONATAINER'
sh "docker run -p 5050:4000 -d package${env.BUILD_NUMBER}"
echo 'CHECKING HEALTH STATUS'
script {
try {
sh "curl -s --head --request GET http://127.0.0.1:5050/ | grep '200'"
echo 'Health Check Passed!'
} catch(Exception e) {
echo "Health Check Failed!"
}
}
}
}
在第三步“程序包测试”中,我已将代理docker放置在文件中,但似乎不起作用。如何将代理docker放置在声明性管道中?