首页 > 解决方案 > Jenkins 控制台不显示在 docker 容器上运行的命令的输出

问题描述

运行以下命令以在 docker 容器上执行我的测试

sudo docker exec -i 6d49272f772c bash -c "mvn clean install test"

上面在 Jenkins 上运行的命令执行 bash。但是 Jenkins 控制台不显示测试执行的日志。

标签: mavendockerjenkinsdocker-container

解决方案


我对 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 中的容器交互),因此如果这不起作用,则可以转换为以下命令并在捕获标准输出的情况下获得类似的结果。


推荐阅读