在同一个Docker容器上的两个Logstash实例

我想知道是否有一种方法可以在单个Docker容器上运行具有单独configuration的两个logstash进程。 我的安装程序有一个使用文件作为input发送事件到Redis的Logstash进程,并从那里到第二个Logstash进程并结束到自定义http进程。 所以, Logstash --> Redis --> Logstash --> Http 。 希望将两个Logstash实例和Redis保留在同一个Docker容器中。 对Docker来说,我还是个新手,对于同样的input/反馈,我将非常感激。

这将比它需要更复杂。 在Docker的世界里,运行三个容器来完成三件事比运行一个容器来完成它们要容易得多。 这是可能的,

您需要在容器中运行init进程来控制多个进程,并将其启动为容器的入口点。 init将必须知道如何启动您感兴趣的进程,logstash和redis。 Basimage / phusion提供了一个良好的初始化系统的图像,但启动脚本是基于runit,可以很难拿起。

如果您只想运行一个进程,则可以使用docker-compose文件启动全部三个进程并将它们链接在一起。