docker在同一文件夹上组成多个容器

时间:2015-11-11 00:42:30

标签: docker directory docker-compose volumes

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

我的问题是:  当我创建2个applicatives容器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无法看到它们的文件夹。

仅使用带有dataContainer的1个应用容器。但同时2个适用的容器永远不会起作用..

有什么想法吗?

THKS。

1 个答案:

答案 0 :(得分:0)

我认为 //in header class SomeClass { private: std::string _rawName; public: const char* Name(); // return c-string }; //in cpp file std::string _tempStr; // my temporary helper std::string const char* SomeClass::Name() { return (_tempStr = "My name is: " + _rawName + ". Your name is: " + GetOtherName()).c_str(); } volumes:服务中的containerA行正在弄乱卷,您应该删除它们。您只需要containerB这些服务。

尝试进行任何更改后,请务必volumes_from。 docker-compose preserves volumes between restarts所以你可能会得到一个旧的缓存卷。