Docker在野蛮服务器上部署经常更改configuration的java web应用程序
我是DevOps的新手。 最近我练习了Docker的例子。 我目前的项目中有一个用例。 这里是
这是java项目。 它包含一个依赖于jar项目的战争项目。 构build工具是maven。
- 我们正在使用Jboss Wildfly服务器。
- 数据库是MySQL 5.7。
- 我们正在使用testng框架进行unit testing用例。
- sonarqube代码分析。 selenium进行testing。
- 所以在任何linux系统中,我们需要的是java8,wildfly server和mysql 5.7。
- 考虑我们有2个盒子。 一个是dev,另一个是testing。 开发人员在他本地的Windows机器上工作。
- 有时我们需要在jboss文件夹中需要一些configuration。 假设我们在这个版本的wildflyconfiguration文件夹中更改了一个xml。 如何沟通相同的开发和testing框作为本地机器。 另一种情况是,对于开发框,我们需要在xml中进行不同的configuration,对于testing框,它与开发框(standalone.xml中的SSL信息和用户属性)不同。 如何处理这个?
我build议通过docker-compose运行所有必需的堆栈(wildfly和mysql)。 你也可以扩展官方萤火虫图像来提供你的自定义configuration,所以你应该build立2个不同的图像,一个标签“开发”和第二个标签“testing”。