0

我需要创建一些容器:1 个数据容器。2 个应用容器。他们必须有权访问同一文件夹(在数据容器中)。

我的问题是:当我创建 2 个应用程序容器时,有 2 个结果:

  • 所有容器都有这个容器的一个实例(所以没有共享)
  • 2 个容器之一控制共享文件夹,第二个失败。

在 2 个应用容器的图像中,我有:

  • 容器 A:共享文件夹中的一些文件。
  • 容器 B :使用此文件夹的应用程序。

我尝试了类似的方法(以及许多替代方法):

containerA:
 image: AAA
 volumes:
  - /var/shared
  - /opt/A
 volumes_from:
  - dataContainer
containerB:
 image: BBB
 volumes:
 - /var/shared
 - /opt/B
 volumes_from:
  - dataContainer
dataContainer:
 image: CCC
 volumes:
  - /var/shared
  - /var/A
  - /var/B

在这种情况下,容器 A 和 B 看不到他们的文件夹。

1 个应用程序容器单独与 dataContainer 一起工作。但是同一时间的 2 个应用容器永远不会起作用..

任何想法 ?

谢谢。

4

1 回答 1

0

我认为and services 中的volumes:行弄乱了卷,您应该删除它们。你只需要在那些服务中。containerAcontainerBvolumes_from

还要确保docker-compose rm在尝试任何更改后。docker-compose在重新启动之间保留卷,因此您可以获取旧的缓存卷。

于 2015-11-11T20:52:02.263 回答