在Jenkin Container On Windows中构建maven项目时找不到Docker



我正在windows机器上尝试jenkins中的maven管道。我正在通过以下命令运行詹金斯容器:

docker run -p 8080:8080 -p 50000:50000 jenkins/jenkins

我的Jenkinsfile如下:

pipeline {
agent {
docker {
image 'maven:3.8.1-adoptopenjdk-11' 
args '-v /root/.m2:/root/.m2' 
}
}
stages {
stage('Build') { 
steps {
sh 'mvn -B -DskipTests clean package' 
}
}
}
}

在构建管道时,我得到了以下错误:

+ docker inspect -f . maven:3.8.1-adoptopenjdk-11
/var/jenkins_home/workspace/simple-java-maven-app@tmp/durable-2227453d/script.sh: 1: 
/var/jenkins_home/workspace/simple-java-maven-app@tmp/durable-2227453d/script.sh: docker: not found
[Pipeline] isUnix
[Pipeline] sh
+ docker pull maven:3.8.1-adoptopenjdk-11
/var/jenkins_home/workspace/simple-java-maven-app@tmp/durable-f8b58578/script.sh: 1: 
/var/jenkins_home/workspace/simple-java-maven-app@tmp/durable-f8b58578/script.sh: docker: not found
[Pipeline] }

Docker桌面已经安装在我的机器上,所以无法获得Why I are get";docker:找不到"错误

有人能指出我是否遗漏了什么吗。

谢谢,

如果运行以下命令:

docker run -p 8080:8080 -p 50000:50000 jenkins/jenkins

您没有为jenkins提供访问主机上安装的docker的方法
要实现这一点,请将docker套接字作为一个卷装入docker run命令中。

在windows上(根据windows上的绑定到docker套接字(:

-v //var/run/docker.sock:/var/run/docker.sock

在linux上:

-v /var/run/docker.sock:/var/run/docker.sock 

最新更新