gpt4 book ai didi

docker - 如何在不阻塞 ci 和猜测持续时间的情况下进行 docker-compose up

转载 作者:行者123 更新时间:2023-12-02 02:25:15 25 4
gpt4 key购买 nike

目前在 Travis-CI 中,我必须使用 -d 运行 docker-compose,这样它就不会阻止构建过程。不幸的是,这意味着我需要某种方法来确保我的容器在继续测试之前可以运行。我发现最好的方法是使用 sleep

除了使用 Docker 的 CI(在我看来这很糟糕)之外,还有人对如何实现这一目标有任何建议吗?

目前我使用:

  - docker-compose up -d
- sleep 6

最佳答案

简单的事情:

- docker-compose up -d
- while true; do echo Checking...; echo $(docker-compose exec service_name test-command something) | grep -q some-output && break; sleep 0.5; done ;

或者更好地调用一个格式更好的脚本(您需要创建一个/health-check.sh):

- docker-compose up -d
- while true; do echo Checking...; (docker-compose exec service_name /health-check.sh) && break; sleep 0.5; done ;

/health_check.sh:

#!/bin/bash

curl http://localhost:PORT && exit 0
exit 1

关于docker - 如何在不阻塞 ci 和猜测持续时间的情况下进行 docker-compose up,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44234239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com