Jenkins + Docker + Windows

问题描述 投票:3回答:2

我目前在Windows 10上使用Jenkins 2.89.3运行Docker 17.12.0-ce-win47,使用Linux容器。

我试图运行以下Jenkins文件

pipeline {
    agent { docker 'maven:3.3.3' }
    stages {
        stage('build') {
            steps {
                sh 'mvn --version'
            }
        }
    }
}

但是,我在Jenkins中收到以下错误:

java.io.IOException: Failed to run image 'maven:3.3.3'. Error: docker:
Error response from daemon: the working directory
'C:\Users\c.c\.jenkins\workspace\Neo4jTime_master-R4QSBCTASBURK2MQKHAPXGLIBNT65CJORPZCYLPCGRG75IGOQKTA'
is invalid, it needs to be an absolute path.

我该怎么办?

docker jenkins docker-for-windows docker-desktop
2个回答
2
投票

当我尝试在Windows上安装Jenkins时,我遇到了类似的问题。示例解决方案在Docker中使用Docker运行Jenkins。

我准备了一些小自述文件,如何在Docker中使用Docker设置Jenkins并使用示例Jenkinsfile https://github.com/auriuki/jenkins-docker

简而言之:在Docker中运行Jenkins就像在官方的Jenkins文档中一样。

docker run ^
  -u root ^
  --rm ^
  -d ^
  -p 8080:8080 ^
  -p 50000:50000 ^
  -v "E:/Docker/Jenkins":/var/jenkins_home ^
  -v /var/run/docker.sock:/var/run/docker.sock ^
  --name jenkins ^
  jenkinsci/blueocean

其中E:/Docker/Jenkins是jenkins配置,workspec等的创建目录 - 以避免在删除容器后丢失数据。


1
投票

只有在Jenkins将安装在Linux机器上时,这才有效。这是因为Docker插件将工作空间安装到容器中(使用-v参数),并且Linux中不存在Windows路径。

© www.soinside.com 2019 - 2024. All rights reserved.