Windows环境下如何延长Docker运行超时时间?
解决Windows环境下Docker 5分钟超时问题
以下是针对你操作流程中各环节的超时延长方案:
1. 延长Docker Build的超时时间
如果超时发生在镜像构建阶段,可通过两种方式调整:
- 命令行直接指定:在build命令中添加
--timeout参数(单位为秒),比如设置为1小时(3600秒):docker build --timeout 3600 -t estimate_something -f Dockerfile . - Docker Desktop全局配置:打开Docker Desktop → 进入「设置」→ 选择「Docker Engine」,在配置文件中启用BuildKit后,执行build前设置环境变量指定超时:
export BUILDKIT_TIMEOUT=3600 docker build -t estimate_something -f Dockerfile .
2. 调整容器服务的超时时间
从你调用的接口路径来看,容器内运行的是类Lambda Runtime的服务,默认超时为5分钟,可通过环境变量调整:
- 在
docker-compose run命令中添加超时环境变量(比如设置为30分钟):docker-compose run -p 9000:8080 -e MY_ENV_VAR="VERY_IMPORTANT_VAR" -e AWS_LAMBDA_FUNCTION_TIMEOUT=1800 something_estimation - 若使用
docker-compose.yml配置文件,可在服务定义中添加环境变量:services: something_estimation: # ... 其他配置项 environment: - MY_ENV_VAR="VERY_IMPORTANT_VAR" - AWS_LAMBDA_FUNCTION_TIMEOUT=1800
3. 延长Curl请求的超时时间
如果超时发生在curl请求阶段,可通过参数指定连接超时和总超时:
curl --connect-timeout 60 --max-time 1800 -XPOST "http://localhost:9000/2015-03-31/functions/function/invocations" -d @some_input.json
--connect-timeout:设置连接目标服务器的超时时间(单位:秒)--max-time:设置整个请求的总超时时间(单位:秒)
内容的提问来源于stack exchange,提问作者Benny K
相关产品推荐
相关产品推荐

