maven - Jenkins 控制台不显示在 docker 容器上运行的命令的输出
问题描述
运行以下命令以在 docker 容器上执行我的测试
sudo docker exec -i 6d49272f772c bash -c "mvn clean install test"
上面在 Jenkins 上运行的命令执行 bash。但是 Jenkins 控制台不显示测试执行的日志。
解决方案
我对 docker start 有类似的问题(类似于 docker exec)。我使用了-i选项,它在 Jenkins 之外可以正常工作,但 Jenkins 中的控制台没有显示此命令的任何输出。我将-i替换为-a ,类似于以下内容:
sudo docker container create -it --name container-name some-docker-image some-command
sudo docker container start -a container-name
sudo docker container rm -f container-name
docker exec 方法没有-a选项,因此可能删除-i选项也可以(因为您没有与 Jenkins 中的容器交互),因此如果这不起作用,则可以转换为以下命令并在捕获标准输出的情况下获得类似的结果。
推荐阅读
- pandas - 如何跨多列绘制数据的标准化计数图
- c++ - 当要测试的功能需要用户输入时,如何制作驱动功能?
- node.js - 添加来自多个请求的结果 - Node JS
- php - PHP、Guzzle、Microsoft Graph API、文件块、大文件上传会话不断失败 - 我该如何解决?
- here-api - 如何在 Here Map 中为“DomIcon|DomMarker”设置“锚点”或“偏移量”?
- html - 可以从循环中随机定位图像吗?
- c - 如何修复使用 gcc 作为编译器的 C 程序的计时致命错误?
- javascript - Svelte 服务错误的项目
- jquery - 将特定 div 标签从一个容器移动到同一页面中的另一个容器
- python - WSL 上的 Virtualenv 创建的文件与 PowerShell 上的 Virtualenv 不同