当以前版本的 Docker 中的构建失败时,我可以依靠如下输出:
---> 8f9941c285e2
Removing intermediate container 9a543227b6b8
Step 6/21 : RUN adduser -s /bin/sh -h /home/user -D user && mkdir -p /whl && chown -R user:user /srv /whl
---> Running in 93a90935664d
---> 7f700d063b68
Removing intermediate container 93a90935664d
Run Code Online (Sandbox Code Playgroud)
如果该步骤失败,中间图像7f700d063b68仍然存在。我可以docker run尝试弄清楚发生了什么。
但现在,使用 docker client 20.10.2 我只能得到以下输出:
=> [dev 1/3] COPY --from=build /whl /whl
.1s
=> [dev 2/3] COPY --chown=user:user . .
.9s
=> ERROR [dev 3/3] RUN python3 -m pip install --find-links /whl -e ".[bpython,test]" && command -v bpython
.3s
Run Code Online (Sandbox Code Playgroud)
我在输出中没有看到任何docker build --help似乎可以提供更多可调试性的内容。docker build不接受--debug或--verbose标记。
我如何才能发现最后一个成功的图像/层是什么,以便我可以输入它并使用上下文进行调试?
我认为您正在使用 BuildKit,如果变量DOCKER_VARIABLE是DOCKER_BUILDKIT=1?那么您正在使用 Buildkit。
要使用之前使用的内容来查看构建的输出,然后进行设置,
DOCKER_BUILDKIT=0 docker build -t sometag .
与之前的构建器相比,BuildKit 提供了许多改进。
有关 docker 文档的更多信息,
https://docs.docker.com/develop/develop-images/build_enhancements/
| 归档时间: |
|
| 查看次数: |
1369 次 |
| 最近记录: |