首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jenkins教程maven项目(与Docker一起)在构建阶段失败

Jenkins教程maven项目(与Docker一起)在构建阶段失败
EN

Stack Overflow用户
提问于 2018-01-20 21:10:12
回答 3查看 2.2K关注 0票数 2

我正在使用使用Docker的当前Jenkins Maven项目教程:

https://jenkins.io/doc/tutorials/build-a-java-app-with-maven/

在构建阶段,我一直收到这个错误:

简单-java-maven-应用程序运行shell脚本 sh:无法创建/var/jenkins_home/workspace/simple-java-maven-app@tmp/durable-bae402a9/jenkins-log.txt:不存在的目录 sh:无法创建/var/jenkins_home/workspace/simple-java-maven-app@tmp/durable-bae402a9/jenkins-result.txt:不存在的目录

我尝试过在列出的目录上使用chmod -R 777chown -R nobodychown -R 1000设置限制最少的权限,但似乎没有什么有效。

这种情况发生在Docker 17.12.0-ce版本上的jenkins映像,在Windows10Professional上构建c97c6d6。

由于在Jenkins站点上的Maven项目教程正在发生这种情况,我想知道还有多少人遇到了这个问题。

EN

回答 3

Stack Overflow用户

发布于 2018-01-23 22:12:42

我在MacOSX上也有同样的问题。经过几个小时的研究,我终于找到了解决办法。

要解决这个问题,重要的是要了解Jenkins在容器中,并且当容器中的码头代理与您的码头引擎交谈时,它给出了在容器内部挂载卷匹配的路径。但你的对接引擎在外面。因此,为了使路径在内部正确工作,容器必须匹配宿主中容器外部的相同路径。

要允许正确工作,您需要更改2件事。

  • docker运行参数
  • Jenkinsfile码头代理参数

为了我自己的习惯,我用了这个

代码语言:javascript
复制
docker run -d \
  --env "JENKINS_HOME=$HOME/Library/Jenkins" \
  --restart always \
  --name jenkins \
  -u root \
  -p 8080:8080 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v $HOME/Library/Jenkins:$HOME/Library/Jenkins \
  -v "$HOME":/home \
  jenkinsci/blueocean

在Jenkinsfile里

更换代理部件

代码语言:javascript
复制
agent {
  docker {
    image 'maven:3-alpine'
    args '-v /root/.m2:/root/.m2'
  }

通过

代码语言:javascript
复制
agent {
  docker {
    image 'maven:3-alpine'
    args '-v <host_home_path>/.m2:/root/.m2'
  }
票数 3
EN

Stack Overflow用户

发布于 2018-01-31 23:21:11

这一问题很可能是由于最近码头行为的变化造成的,詹金斯的Docker管道插件已经不再正确地处理这个问题了。

在不涉及太多细节的情况下,这个问题导致Jenkins无法再识别它正在运行的容器,这将导致您在这些教程中遇到的错误(上面)。

一个新版本(1.15)的码头管道插件昨天发布(https://plugins.jenkins.io/docker-workflow)。

如果您在Jenkins (在Docker中)实例上升级了这个插件(通过Manage > Manage ),您会发现这些教程应该重新开始工作(如文档所示)。

票数 1
EN

Stack Overflow用户

发布于 2018-01-21 08:12:21

错误消息意味着没有创建目录durable-bae402a9

回顾本教程,找到应该创建该目录的步骤,并对其进行任何必要的更改以确保其成功。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48361135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档