如何在退出另一个容器后启动Docker容器

时间:2016-12-15 11:32:13

标签: php docker composer-php docker-compose

假设我有两个容器:composerphp,它们共享相同的代码库,即相同的卷。我想用一个像docker-compose up这样的docker-compose命令来管理它们。

所以问题是如何逐个启动这些容器,而不是同时启动?我的意思是,只有在退出php之后才启动我的composer容器,即composer容器应该为我的php容器安装所有供应商并退出,然后才会php 1}}容器应该启动一个已安装供应商的内置PHP Web服务器。

P.S。现在我得到了两个容器同时启动的行为。所以我的php容器试图在没有供应商的情况下启动Web服务器,而composer容器正在尝试安装这些供应商。

这种情况有一个很好的解决方案吗?

1 个答案:

答案 0 :(得分:1)

有几件事可以帮助您;

  • depends_on:它不等待其他服务完成,而仅等待直到其他服务启动。参见:depends_on
  • health_check:在命令返回成功之前,它不会启动服务。参见:healthcheck
  • 创建一个shell脚本以初始化您的容器/服务的顺序。参见:startup order