等待容器中的进程启动,然后发信号通知他们可以启动的依赖容器

时间:2016-11-30 13:00:48

标签: docker docker-compose

我有一个GraphQL容器,点击一个Elasticsearch容器。现在,在我有的撰写文件中:

depends_on:
      - elasticsearch

但问题是,elasticsearch服务器(作为JVM进程)需要时间。然而,就docker而言,似乎没有区别,因此compose然后移动GraphQL容器...即使ES没有准备好。因此,如果用户在ES准备好之前访问该站点,则graphql会出错并崩溃..

那么,有没有办法向依赖容器发出信号来检查进程是否已启动,可能首先?或者必须在GraphQL代码中完成......

1 个答案:

答案 0 :(得分:1)

您可以通过.info和2个撰写文件来完成此操作。

您可以bash scriptcurl使用elasticsearch来确定它。 然后使用第二个撰写文件调出第二个容器。