1,176
社区成员
环境的为windows10,安装了docker for windows,然后安装了jenkins,我在jenkins中定义了一个pipeline流水线,在流水线中定义agent为docker,这个时候出现了错误:/var/jenkins_home/workspace/pipeline-docker-container@tmp/durable-68323e86/script.sh: 1: docker: not found
pipeline定义如下:
pipeline {
agent {
docker {
image 'node:14-alpine' // Docker 镜像名称和标签
args '--network host' // 可选择性添加一个或多个 Docker 参数
reuseNode true // 可选择性重用先前使用过的节点
}
}
stages {
stage('Build') {
steps {
sh 'npm install'
}
}
stage('Test') {
steps {
sh 'npm test'
junit 'test-results/**/*.xml'
}
}
stage('Deploy') {
steps {
sh 'npm run deploy'
}
}
}
}
查下来就是没有将宿主机的docker.sock映射到jenkins中。我看有解决方法是做docker.sock的映射,就是在docker run的时候添加参数:、
-v /var/run/docker.sock:/var/run/docker.sock,可是我现在是在windows下面,没有/var/run/docker.sock
请问这个问题该如何解决?
问题解决了,启动container的时候,添加 --privileged=true 的参数就可以了。