在我们的 Jenkins 代理中,我们正在运行大约几个(大约 20 个)测试,其设置涉及为“大量”服务/容器(大约 14 个)运行 docker-compose up
。
有时,我会收到以下错误:
ERROR: for testdb-data UnixHTTPConnectionPool(host='localhost', port=None): Read timed out. (read timeout=60)
An HTTP request took too long to complete. Retry with --verbose to obtain debug information.
If you encounter this issue regularly because of slow network conditions, consider setting COMPOSE_HTTP_TIMEOUT to a higher value (current value: 60).
无法始终如一地重现这一点。而且我仍在试图弄清楚是否与我们的代理资源被充分利用有关。
docker -v
是 1.10.1
并且 docker-compose -v
是 1.13.1
。
关于这可能与什么有关的任何想法?
原文由 jleeothon 发布,翻译遵循 CC BY-SA 4.0 许可协议
重启docker服务:
并设置
DOCKER_CLIENT_TIMEOUT
和COMPOSE_HTTP_TIMEOUT
环境变量:目前有两种解决方法。但是问题仍然存在于 docker compose github 中:
https://github.com/docker/compose/issues/3927
https://github.com/docker/compose/issues/4486
https://github.com/docker/compose/issues/3834