`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 -v
是1.10.1
,docker-compose -v
是1.13.1
。
关于这可能与什么有关的任何想法?
答案
重启docker服务:
sudo systemctl restart docker
并设置DOCKER_CLIENT_TIMEOUT
和COMPOSE_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 容器