gpt4 book ai didi

docker - 无法通过 Jenkins 声明式管道更改 Docker 容器内的目录

转载 作者:行者123 更新时间:2023-12-01 01:48:27 25 4
gpt4 key购买 nike

我正在尝试使用 dir 更改当前目录此处概述的命令:https://jenkins.io/doc/pipeline/steps/workflow-basic-steps/#code-dir-code-change-current-directory

我已经编辑了我的管道,类似于这样的东西:

pipeline {
agent { dockerfile true }
stages {
stage('Change working directory...') {
steps {
dir('/var/www/html/community-edition') {
sh 'pwd'
}
}
}
}
}

它根本不更改目录,而是尝试在主机上创建一个目录并失败 java.io.IOException: Failed to mkdirs: /var/www/html/community-edition
使用 sh cd /var/www/html/community-edition似乎也不起作用。如何更改容器中的目录?其他人似乎也有同样的问题,但不得不改变他的管道结构来改变目录,这听起来不像是一个合理的修复。该步骤不是已经在容器中调用了吗? https://issues.jenkins-ci.org/browse/JENKINS-46636

最佳答案

我昨天遇到了同样的问题。好像是a bug导致 dir()在容器内使用时不要更改目录。我已经通过执行 cd 让它工作了和 pwd立即命令,如下所示:

sh '(cd //var/www/html/community-edition && pwd)'

关于docker - 无法通过 Jenkins 声明式管道更改 Docker 容器内的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46587663/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com