【问题标题】:Best way to deal with timeout on docker build处理 docker build 超时的最佳方法
【发布时间】:2021-07-05 16:34:33
【问题描述】:

我一直在构建映像时遇到超时。

似乎没有办法增加构建的超时限制。有什么方法可以指向本地文件,这样就不必下载它们了?

Dockerfile

FROM amazon/aws-lambda-python:3.8
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY src ./
CMD ["app.handler"]

requirement.txt

sentence-transformers

控制台输出

myname$ docker build .
[+] Building 0.1s (2/2) FINISHED                                                                                                                                            
 => [internal] load build definition from Dockerfile                                                                                                                   0.0s
 => => transferring dockerfile: 2B                                                                                                                                     0.0s
 => CANCELED [internal] load .dockerignore                                                                                                                             0.0s
 => => transferring context:                                                                                                                                           0.0s
failed to solve with frontend dockerfile.v0: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount237517315/Dockerfile: no such file or directory
Wills-MBP:encoding willjc$ docker build ./app
[+] Building 116.2s (8/9)                                                                                                                                                   
 => [internal] load build definition from Dockerfile                                                                                                                   0.0s
 => => transferring dockerfile: 173B                                                                                                                                   0.0s
 => [internal] load .dockerignore                                                                                                                                      0.0s
 => => transferring context: 2B                                                                                                                                        0.0s
 => [internal] load metadata for docker.io/amazon/aws-lambda-python:3.8                                                                                                0.9s
 => [auth] amazon/aws-lambda-python:pull token for registry-1.docker.io                                                                                                0.0s
 => [1/4] FROM docker.io/amazon/aws-lambda-python:3.8@sha256:712a2f44c56a45b927b4d906696ce7678f83e364956f1fce89944c43e83260c6                                          0.0s
 => [internal] load build context                                                                                                                                      0.0s
 => => transferring context: 1.60kB                                                                                                                                    0.0s
 => CACHED [2/4] COPY requirements.txt .                                                                                                                               0.0s
 => ERROR [3/4] RUN pip install -r requirements.txt                                                                                                                  115.1s
------                                                                                                                                                                      
 > [3/4] RUN pip install -r requirements.txt:                                                                                                                               
#8 1.430 Collecting sentence-transformers                                                                                                                                   
#8 1.534   Downloading sentence-transformers-1.0.4.tar.gz (74 kB)                                                                                                           
#8 1.960 Collecting transformers<5.0.0,>=3.1.0                                                                                                                              
#8 1.978   Downloading transformers-4.5.0-py3-none-any.whl (2.1 MB)                                                                                                         
#8 2.661 Collecting tqdm
#8 2.674   Downloading tqdm-4.60.0-py2.py3-none-any.whl (75 kB)
#8 2.781 Collecting torch>=1.6.0
#8 2.805   Downloading torch-1.8.1-cp38-cp38-manylinux1_x86_64.whl (804.1 MB)
------
executor failed running [/bin/sh -c pip install -r requirements.txt]: exit code: 137

【问题讨论】:

    标签: python docker docker-build


    【解决方案1】:

    错误代码 137 不是超时,而是内存终止。它正在做的步骤是编译一个大型机器学习二进制文件,这是内存密集型的。增加构建机器的可用内存。

    【讨论】:

    • 有没有可能是别的东西?我已经将内存增加到 30g 并且遇到了同样的错误。
    【解决方案2】:

    我试过了

    docker build . -m 30g
    

    没有运气。进入 Preferences > Resources 并在那里增加一些东西产生了结果。我以为这就是 -m 的用途,但是?

    【讨论】:

    • 是的,这个错误是“机器内存不足”,不是命令行选项可以帮助解决的问题。该接口增加了运行 docker 的 VM 可用的总内存。
    【解决方案3】:

    请参考这个问题: Failed To Resolve With FrontEnd DockerFIle.v0

    还要确保你的 Dockerfile 是正确的,我看不到你是从基础镜像创建的。

    【讨论】:

      猜你喜欢
      • 2011-05-21
      • 1970-01-01
      • 1970-01-01
      • 2012-11-16
      • 1970-01-01
      • 2020-11-24
      • 2015-03-05
      • 2011-03-19
      • 1970-01-01
      相关资源
      最近更新 更多