0
我想找出最有效的方式(内存和空间)来运行复杂的依赖关系的多个 服务。Docker:每个服务都有一个共享映像或单独映像?
假设,我们有3个服务项目:
- 服务S1只使用库A和B
- 服务S2只使用库B和C
- 服务S3只使用库A和C
因此,如果您为每个这些单独的图像,你最终会采用这种结构:
- S1
- 高山层
- 甲乙库
- S2
- 高山层
- B和C库
- S3 个
- 高山层
- A和C库
库层不共享任何文件(虽然实际份额库)。
分享资源的最佳策略是什么?所有3种服务都可以使用一张图像吗? (存储库A,B,C中的一个图像层)
UPD
我们一台机器上运行的所有服务,而不是一个群集上
UPD 2
下面是一个example(扰流板:图层不共享)
我说的是效率,而不是建筑风格。 “不理想”是什么意思?我明白,Docker映像应尽可能小,但在这里我想尽可能少地使用空间和内存。 当然,如果我们在集群上运行我们的服务,效率不高,因为我们必须存储我们甚至不使用的图层副本。 – grihabor