问题标签 [jenkins-docker]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
298 浏览

selenium-webdriver - Jenkins+Docker+Grid 执行 - UnreachableBrowserException:无法启动新会话

在通过 Jenkins 使用 Docker-compose 在网格上动态执行我的套件时,我得到以下异常堆栈跟踪:

我的 docker-compose.yml 文件: 在此处输入图像描述

我的中心网址:“http://selenium-hub:4444/wd/hub”

在本地系统上执行相同的代码时,Docker 容器上的一切正常。只有当我从 Jenkins 触发我的测试时才会出现问题。

0 投票
1 回答
293 浏览

jenkins - 如何告诉 jenkins 的 junit-plugin 处理在 docker-container 中创建的测试报告文件?

我有一个在 Dockerfiles 中进行构建、测试和部署过程的项目,我想对其应用 jenkins 管道。我想让詹金斯部分尽可能简单、苗条和不可知。可以为 jenkins 安装其他插件。可以修改 dockerfiles。

例如考虑这个 Jenkinsfile

在此示例中,后块创建以下输出

在此示例中,似乎创建了所需的文件,但 junit-plugin 似乎找不到它。我将如何修改此示例以便 junit-plugin 可以找到测试报告文件?

附加说明/背景:

  • 输出似乎创建成功,但它们属于 root 而不是 jenkins 用户。难道这就是junit看不到他们的原因吗?
  • 在我的具体情况下,有一些失败的测试,但我不认为它们是问题的根源
  • 报告文件是使用 dockercontainer 内的 karma-junit-reporter 创建的
  • 我是詹金斯的新手,所以我想我可能在根本上做错了什么
  • 我想使用 docker-plugin for jenkins 会起作用,尽管我仍然必须从容器中取出 junit 工件并将其传递给 Jenkins JUnit 插件。欢迎使用 docker-plugin 回答。
  • 我在 dockerfile 中的测试是业力/角度测试,需要在跑步者上安装铬。如果事实证明在 docker 中这样做太烦人了,那么我可能会在所有代理上安装 chromium,并为 jenkins 使用 nodejs-plugin。但现在我仍在研究不同的选择
0 投票
0 回答
56 浏览

docker - 我无法从 Jenkins Docker Containers 卷曲到我的已部署应用程序

我在本地机器上部署了以下容器:

  • student-app:是我的测试应用
  • karson-jenkins:是我的第一个 jenkins,它使用已发布的 localhost ip 和端口 8082 以及 docker 网络作为桥接器运行
  • karson-jenkins-host:是我的第二个 jenkins,它以 docker 网络作为主机运行 在此处输入图像描述

我能够从浏览器成功启动并导航到我的被测应用程序 (AUT) 和 Jenkins 站点,如下所示: 在此处输入图像描述 在此处输入图像描述

我的问题是我无法从使用已发布 IP 和映射端口 8082 运行的 Jenkins 容器中卷曲到我的应用程序 url,尽管它与我的应用程序属于同一个网络并且 docker 网络是Bridge,这使得我发送了 api 请求对詹金斯作业执行测试时应用程序收到错误连接被拒绝

在此处输入图像描述

在此处输入图像描述

我还尝试使用--network=hostindocker run命令为 jenkins 运行另一个 docker 容器,并且我能够卷曲到我的 AUT url。但另一个问题是我无法找到任何方法来访问我运行的 jenkin url docker network host。我试图导航到http://host.docker.internal:8080/http://host.docker.internal/但他们都没有成功 在此处输入图像描述

在此处输入图像描述

您的任何帮助,以帮助我澄清我的问题并解决它,我确实将非常感激。

0 投票
0 回答
31 浏览

docker - java.lang.NoSuchMethodError:在步骤中找不到这样的 DSL 方法“dockerImage”

--------错误--------------- java.lang.NoSuchMethodError: 在步骤中找不到这样的 DSL 方法 'dockerImage' ...

我寻找问题并修复它们,但我不知道。

0 投票
0 回答
28 浏览

docker - 在生产环境中将 Jenkins 服务器作为 Docker 容器运行

我正在研究用 docker Jenkins 服务器替换默认生产 Jenkins 服务器的能力。这样做的主要原因是有机会在未来保存所有配置等快速部署其他 Jenkins 服务器。有人有此活动的经验吗?使用容器化的 Jenkins 进行生产是否有意义?

0 投票
0 回答
29 浏览

docker - 如何在 Windows 代理 - 无效绑定挂载规范上运行 jenkins docker 映像?

我有在 linux 服务器上运行的 jenkins 实例,以及由控制器连接的其他 linux 和 windows 代理。我正在尝试通过 pipline 脚本运行 docker 映像,该脚本将在远程节点上执行一些阶段。尝试在 linux 上执行此操作时,它可以工作,但是当尝试在 windows 上执行此操作时,我收到以下错误:

由于中间有 2 个冒号,我觉得它是合理的,但这是使用插件执行的运行命令。

管道脚本:

知道如何解决吗?我应该在机器上或詹金斯实例上配置一些东西来解决它吗?

0 投票
1 回答
24 浏览

jenkins-pipeline - 如何避免在 Jenkinsfile 中构建两次以获得不同的图像名称?

在我们的项目中,我们在构建时附加分支名称,除非它是 master。我们用 build_id 和“最新”标记它们。这就是我们想要的。

为了实现这一点,我们在主分支上构建了两次。我觉得这很奇怪。我们怎样才能避免呢?

0 投票
0 回答
30 浏览

jenkins-job-dsl - 如何在分支中将 origin/${gitlabSourceBranch} 作为字符串('origin/${gitlabSourceBranch}')

我正在从事工作 dsl 以自动安装 docker jenkins。所以我正在使用 casc.yaml 文件进行编辑。但是现在我有一个问题,我无法设置分支,因为'origin/${gitlabSourceBranch}' 我想让'${gitlabSourceBranch}' 像字符串一样工作。但它似乎作为表达式工作,就像他们正在寻找 env 变量一样。我不希望他们那样工作。

请帮助我使其正常工作。

0 投票
1 回答
64 浏览

docker - Jenkins 构建代理 docker 指定 docker 文件名

我正在按照这个片段添加到 jenkins 构建代理的 docker 文件(https://www.jenkins.io/doc/book/pipeline/docker/),

'dockerfile true'查找默认的 Dockerfile。有没有一种方法可以指定 docker 文件名,因为我不想使用默认文件名,因为我的设置与已经存在的设置不同?