从Docker镜像中为Java项目运行集成测试

时间:2017-02-08 17:29:20

标签: java jenkins docker docker-compose

我是Docker的新手,目前正在开发一个使用docker进行构建和部署的项目。我在Windows 10机器上安装了Docker for Windows,并且当前在windows环境中运行了docker。

我正在使用Jenkins为一个项目创建docker镜像,该项目内部编译了Integration测试。

我需要在Jenkins中创建新的Job,它将从之前的作业中获取docker镜像并对此图像运行Integration测试,而不是在代码库上运行。我不确定我们能否为Windows做到这一点。我在网上搜索过,但没有找到任何解释如何实现这一目标的文章或教程。

有人可以帮我解决这个问题,或者指导我找一个我可以参考的解决方案。

由于

Vikeng

1 个答案:

答案 0 :(得分:1)

你的问题已经有几个月了,但仍然是:)

您可以查看Fabric8 Docker Maven插件https://dmp.fabric8.io/ 它与Maven工作流程完美集成:您描述如何构建您的图像(使用DockerFile或直接在pom中),以及如何运行它(以“docker run”方式或使用docker-compose.yaml )。当然,Windows是受支持的,因为它是你的用例:)

然后,插件的各个阶段很好地集成,图像的构建在“包”阶段进行,容器在“预集成”时启动,并在“集成后”停止和删除。 / p>

要记住的一件小事是,如果你有一个多模块项目,集成测试由模块运行,所以如果你有几个集成在一起的图像,请确保在同一个pom中定义它们。

希望这有帮助