docker - 看不到 `/var/jenkins_home/workspace` 目录
问题描述
我已经像这样启动了一个詹金斯容器:
docker run -u $(id -u) -dit -p 49001:8080 -v "$(pwd)/jenkins_home":/var/jenkins_home --name jenkins jenkins/jenkins:latest
这基本上是启动和容器,我能够运行我的管道。我创建了一个非常简单的管道,如下所示:
pipeline {
agent any
stages {
stage('Hello') {
steps {
input message: 'Do you want to proceed', ok: 'Yes'
}
}
}
}
当我运行管道时,我看到此管道的以下控制台输出:
Running on Jenkins in /var/jenkins_home/workspace/first_pipeline
...
Do you wnat to proceed
Yes or Abort
我让管道挂在那里但没有提供输入并进入检查 docker 容器内的工作区目录,但我没有看到workspace
里面的任何子目录/var/jenkins_home
任何想法为什么会发生这种情况?
解决方案
事实证明,这个问题正是@Ian W
上面评论中提到的。如果我更新管道以实际创建文件,那么我可以看到正在创建的工作区。这是更新的管道:
pipeline {
agent any
stages {
stage('Hello') {
steps {
writeFile(file: "test.txt", text: "Main workspace")
dir(pwd(tmp: true)) {
writeFile(file: "test.txt", text: "Temporary workspace")
}
input message: 'Do you want to proceed', ok: 'Yes'
echo "Test completed"
}
}
}
}
推荐阅读
- java - How to produce map with distinct values from a map (and use the right key using BinaryOperator)?
- drools - 新工作台测试场景支持 Java 日期/时间类?
- c - 我应该如何让用户输入我想要的信息?
- .net - .net core 3:针对不同环境配置DI容器
- azure - 如何在 azure 虚拟机中获取 DNS 名称 - 列出所有 api?
- xml - 如何在 XML 模式中添加一个仅显示一些可能值的附加元素
- delphi - 德尔福柏林 Unicode 问题
- python - 为什么 response.urljoin() 没有获取 Scrapy 中的所有 URL?
- javascript - 通过箭头键读取 div 的最后一个元素而不是第一个元素
- encryption - 在非对称加密中拆分和集成私钥是否会损害安全性?