`docker-compose up`超时使用UnixHTTPConnectionPool

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了`docker-compose up`超时使用UnixHTTPConnectionPool相关的知识,希望对你有一定的参考价值。

在我们的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 -v1.10.1docker-compose -v1.13.1

关于这可能与什么有关的任何想法?

答案

重启docker服务:

sudo systemctl restart docker

并设置DOCKER_CLIENT_TIMEOUTCOMPOSE_HTTP_TIMEOUT环境变量:

export DOCKER_CLIENT_TIMEOUT=120
export COMPOSE_HTTP_TIMEOUT=120

现在是两个解决方法。但是这个问题仍然在docker compose github中打开:

https://github.com/docker/compose/issues/3927

https://github.com/docker/compose/issues/4486

https://github.com/docker/compose/issues/3834

以上是关于`docker-compose up`超时使用UnixHTTPConnectionPool的主要内容,如果未能解决你的问题,请参考以下文章

docker-compose up与docker-compose up -d

docker-compose up 容器开始排序

如何禁止使用 docker-compose up 重新创建 docker 容器

Docker-compose up时报错:

保持 Redis 数据在 Docker 容器中的 docker-compose down 和 up 之间保持活跃

Docker Compose with Rails docker-compose up 失败