我已经要求使用Apache Camel创建一些冒充者/存根/反射器(选择你自己的术语......)。这些存根需要:
我没有骆驼专家,但我可以知道如何做到这一点......
但是,鉴于有很多这些存根,并且我想在不同情况下使用这些存根的不同子集,我想构建一个泛型 Camel Docker镜像,并且当我启动Docker容器时,将不同的存根集应用于它。
如果它有助于进一步澄清事情,我希望能够将存根定义存储为git repos中的未编译的代码(例如XML,Simple,等等) - 与Docker映像分开 - 并且Docker / Camel容器通过volume mount / s或环境变量加载这些存根定义。一旦容器启动,那些存根图像将持续存在直到容器被杀死 - 我不需要操纵存根,除非容器启动。
关键是Camel / Docker镜像必须是通用的,而不是使用一组特定的存根定义预先构建。
我可以处理Docker方面的事情 - 我可以解决的是如何让Camel在Camel启动时(即创建Docker容器时)加载存根定义而不是将存根加载到例如编译时的WAR。
感谢您的任何帮助或建议
答案 0 :(得分:0)
使用以下方式可以轻松实现:
如果您无法将XML文件映射到正在运行的容器,那么您可以实现自己的小启动部分,它将在启动时从某些env变量读取XML内容,将其存储到临时文件中并运行相同的逻辑以使用文件上下文启动spring 。在这种情况下,您可以运行docker容器并将spring XML作为env传递。变量