jenkins - archiveArtifacts 步骤无法与 Jenkins 通信
问题描述
我在 Jenkins 声明性管道的一个阶段有以下代码。
post {
success {
archiveArtifacts 'Foo_*'
stash name: 'bar-stash', includes: "Foo_123.zip"
sh "rm -rf Foo_*"
echo 'Archive success!'
}
}
此管道作为构建代理在 Amazon EC2 实例(弗吉尼亚)上运行。我将 Jenkins 托管在我组织本地网络上的 Docker 容器中。
这个归档步骤已经运行了好几个月,直到我的组织更新了防火墙规则。现在,该作业无限期地挂在 archiveArtifacts 步骤上。
从控制台日志:
[Pipeline] }
[Pipeline] // ansiColor
Post stage
[Pipeline] archiveArtifacts
Archiving artifacts
我怀疑最近清除了一些防火墙规则可能是归档步骤停止工作的原因。
有谁知道需要将哪些端口转发到运行我的 Jenkins Docker 容器的机器,以便 Amazon EC2 实例(弗吉尼亚)成功存档构建?
Jenkins 核心文档没有给我任何东西:https ://www.jenkins.io/doc/pipeline/steps/core/
到目前为止,我已经解决了以下问题:
- ICMP 工作正常 - 我可以从 Amazon EC2 实例 ping 运行 Jenkins Docker 容器的机器的 IP 地址
- TCP 22 工作正常 - 我可以从 Amazon EC2 实例通过 ssh 连接到运行 Jenkins Docker 容器的机器的 IP 地址。
- TCP 443 也被转发
- 我可以从 Amazon EC2 实例上的 Web 浏览器通过端口 8080 访问 Jenkins Web 界面。
- 我可以从 Amazon EC2 实例上的 Web 浏览器访问 Jenkins 的端口 50000,并且可以读取包含诊断信息的纯文本响应。
- 在(Windows)Amazon EC2 实例上运行tracert时,尝试访问运行 Jenkins Docker 容器的机器的 IP 地址 - 请求在第二跳超时,但最终在第 27 跳到达目标 IP
我还可以采取哪些其他故障排除步骤?
解决方案
推荐阅读
- vuejs2 - Vue:将实例化的组件传递给插槽
- printing - 为什么在 Rust 中元组格式限制为 12 项?
- php - 显示多站点子页面 WordPress
- wordpress - 动态引导 4 图像轮播不工作
- wildfly - WildFly-10 - APIMAN 发布问题
- android - 创建签名的apk android studion时应用程序一旦打开就停止
- android - 向上/向左/向右/向下滑动,Android 中的浮动按钮
- java - 打开多个连接时 Rserve 挂起
- javascript - Promise.all() 和捕获错误
- javascript - 如何使用 Jasmine (Angular) 对下载文件进行单元测试?