我有三个通过 docker-compose 连接的 docker 容器。
第一个 (A) 是一个 nginx 代理,它捕获所有网络请求并将其代理到第二个容器 (B)。容器 B 是一个 nodejs 网络服务器。
容器 B 从用户那里获取了一些数据,之后,我需要开始一些硬计算。进行这些计算的软件位于容器 C 中。我可以使用 docker 卷在 B 和 C 之间共享所有数据,这不是问题。但我不知道如何从容器 B 启动计算以及如何知道容器 C 何时完成。
什么是容器 C?它是一个带有一些软件的容器,可以使用终端的命令启动。例如,supersoft start ./path/to/data
。在超软件运行期间,它会向控制台打印一些信息(这对容器 B 中的用户非常有用)。计算超软后就完成了,仅此而已。
问题是如何创建一个正常的架构,它的正常方式是什么?