守夜人不断给502坏门户

我有一个Docker设置为nightwatch.js运行selenium网格testing快速服务器应用程序的seleniumtesting。 当我只是使用docker-compose up,然后在服务器启动后手动运行我的夜间testing时,所有东西看起来都正常启动。 如果我运行它们作为容器命令的一部分(即在我的应用程序服务器容器命令或基于它的一个新的容器运行nightwatch),那么我得到一个503错误的网关错误。 我认为在我的docker设置中有一个竞争条件造成这种情况。 有没有办法保证我的应用程序服务器正常启动之前运行我的夜游testing?

在wait-for-it.sh脚本前面加上你的命令(把它下载并放到镜像中):

command: /wait-for-it.sh theotherservice:PORT -- your-previous-command 

wait-for-it.sh将等待指定的server:port执行--之后的命令,这样可以避免竞争状况。