我一直在构建映像时超时。
似乎没有办法增加构建的超时限制。有没有办法指向本地文件,这样就不必下载它们?
Dockerfile
FROM amazon/aws-lambda-python:3.8
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY src ./
CMD ["app.handler"]
要求.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
答案 0 :(得分:1)
错误代码 137 不是超时,而是内存终止。它正在做的步骤是编译一个大型的机器学习二进制文件,这是内存密集型的。增加构建机器可用的内存。
答案 1 :(得分:1)
答案 2 :(得分:0)
请参考这个问题: Failed To Resolve With FrontEnd DockerFIle.v0
还要确保你的 Dockerfile 是正确的,我看不出你是从基础镜像创建的。