首页 > 解决方案 > 服务关闭时重新尝试 docker-compose logs -f 吗?

问题描述

我经常发现自己为开发目的制作 docker-compose 环境。

然而,当我启动我的服务时必须做的一件烦人的事情是每次所有服务都关闭时docker-compose up -d必须运行。docker-compose logs -f

我希望能够运行一个尝试运行的脚本,docker-compose logs -f然后一旦成功,就可以正常运行。然后一旦服务关闭,继续重试运行,直到它们再次启动。

这有意义吗?我已经尝试过使用watch,但这并不是我想要的行为,并且尝试使用 sleep 命令的循环也不会产生任何有用的结果。

标签: bashdocker-compose

解决方案


如果要循环运行命令,只需:

while sleep 1; do docker-compose logs -f; done

它将每秒运行docker-compose logs -f一次。

watch每个周期都会清除屏幕,因此您不会看到所有消息。


推荐阅读