build议在一个泊坞窗图像中有多个应用程序

我们有多个弹簧引导应用程序,其中一个提供input给其他人
截至目前,我们正在部署在3个不同的虚拟机,并相互连接。

将所有这3个变成单一的docker图像是可取的吗?

比如说,如果我能够将其制作成单一的docker图像,我很容易为不同的团队提供这些图像。
根据记忆的需要,可以将其作为单幅图像的一部分,我做了这个分析。

分布式应用程序包(DAB)是Docker 1.12中引入的一个新概念,是一个可移植的多容器格式。 每个bundle可以在运行时以堆栈的forms部署。 我们使用一个Docker Compose文件,从中创build一个DAB,并将其部署为Docker Stack。 https://blog.couchbase.com/2016/july/docker-services-stack-distributed-application-bundle

如果他们紧密结合,并可以在一个过程中pipe理,是的。
您需要确保您可以正确地停止所有系统(以避免僵尸进程:请参阅“ 在Docker中使用Supervisor ”)

但容器背后的想法仍然是将系统中的每个组件都放在自己的容器中,这有助于debugging(当一个部件出现故障时),升级,logging和监控。

您可以使用docker bundles(dab)试验多容器应用程序 ,以便于分发多容器应用程序。

为了帮助您与DAB,请参阅:

  • “将Docker Compose(v3)部署到Swarm(模式)群集 ”
  • “ 我第一次尝试使用DAB(即分布式应用程序包) ”
  • “ Docker服务,堆栈和分布式应用程序包 ”