我正在寻找可以管理多个相互依赖的 java web 应用程序部署的解决方案,最好是开源的。
该解决方案需要能够创建和存储包含多个发布项目的发布规范 - 每个应用程序的特定版本和相关的其他工件(数据库配置、apache 配置等)。
然后需要解析规范,然后需要在目标环境中部署/执行每个项目。目标环境是基于linux的。 Web 应用程序是在 j2ee 标准应用程序服务器上运行的原版 war 。
要问很多吗?
目前我认为所有部分都已准备就绪 - 二进制工件是使用 maven 发布插件 发布的,因此可以从我们的 maven 存储库 进行部署,database 使用 dbdeploy 进行版本控制,apache config 使用 svn 进行版本控制。但是,我不知道有任何工具可以将所有这些步骤放在多个应用程序上。
我目前首选的方法是使用一种形式的参数化构建供 hudson 创建规范。然后是第二个参数化构建以选择预先创建的规范并在选定的环境中部署/执行它。
但是,这似乎需要做很多工作,而且不是最佳的自定义解决方案。
有人知道任何预先构建的更好的想法吗?或有关如何解决此问题的建议-也许工作流引擎会比 hudson 更好?也许是自定义网络应用?
注意事项:
目标环境已预先构建并满足所有要求 - 例如java 和应用服务器安装,数据库运行等。这不是环境配置问题,而是部署问题。
单个应用程序的自动化部署是许多解决方案的问题,例如cargo,ant 部署脚本等。但是我需要一些可以包装多个部署的东西。例如。启动多个应用程序的特定版本及其要求的 cargo 。
最佳答案
听起来你需要一个 chef cooking 你的配置:)
关于java - 多个 Java Web 应用程序的自动化部署解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1462334/