【问题标题】:Is it possible for a Spring Batch to start a Container with an external app?Spring Batch 是否可以使用外部应用程序启动容器?
【发布时间】:2019-04-19 14:08:19
【问题描述】:

假设我们有一个带有 REST 端点的 REST 应用程序,我们可以将其封装在 Docker 容器中。

假设我们的 Spring 批处理的 Item Processor 喜欢使用上述应用程序来获取有关它正在处理的记录的业务逻辑信息。

我们希望这个 REST 应用程序仅由 Spring Batch 进程使用,我们不希望 Batch 进程与生产 REST 应用程序通信,而是拥有某种它自己的 REST 应用程序实例。

我们也喜欢这个应用实例会在 Spring Batch 进程启动时自动创建,因此不需要额外的人工干预或配置。

Spring 批处理是否有可能使用 run 并将 REST 服务用作 Docker 容器(可能是 testconainerdocker compose?),以便它可以以某种方式“在内部”使用它?

这是一个合理的架构吗?

【问题讨论】:

    标签: docker docker-compose containers spring-batch testcontainers


    【解决方案1】:

    我建议:

    • 创建一个自定义 docker 网络并将 Spring Batch 应用程序容器和 REST 应用程序容器附加到它。这两个容器仅在该网络中可见。
    • 将 Spring Batch 应用容器附加到 REST API 容器,以便项目处理器可以看到 REST API 端点并进行调用

    您可以找到有关如何创建自定义 docker 网络here 的官方教程。

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2018-11-26
      • 2021-01-11
      • 2017-07-02
      • 2018-03-30
      • 2014-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-03
      相关资源
      最近更新 更多