如何在Docker容器中运行JUnittesting,并在JUnit失败时让容器启动失败?

我想在Docker容器中运行Junittesting,如果testing失败,容器将失败。

在我的Docker文件中,我有:

FROM maven:3.2-jdk-7-onbuild CMD mvn verify 

我从一个运行docker compose命令的Go CI服务器踢它。

我所看到的是,这开始执行的后台线程,testing开始运行 – Go CI服务器得到一个OK – 就像maven进程已经开始。 testing结束运行有一些失败,但到那时,Go服务器已经显示一个绿色的“所有好”的状态。

部分问题是我需要EXEC命令,直到testing结束。

我的问题是: 如何在Docker容器中运行JUnittesting,并在JUnit失败时让容器启动失败?

你想用docker-compose run代替docker-compose up

run将会阻塞,并以与容器中的进程相同的退出状态退出。