首页 > 解决方案 > 如果构建失败,如何将文件从构建容器复制(记录)到主机?

问题描述

docker build从 下的命令运行时,如何将一些日志文件从容器复制到主机Dockerfile?一旦构建失败,构建容器就会消失。

一种方法是在每个 RUN 命令吞下非零退出代码后,将日志输出到 STDOUT,然后重新推送原始退出代码。但它似乎没有扩大,就像如果我们想复制整个目录,我们不会压缩并将其输出到控制台:P

有没有可能的潜在解决方案?也许将文件从主机连接到容器或在构建过程中安装目录?

标签: dockerdockerfilefilesystems

解决方案


如果将日志推送到标准输出,则可以使用以下命令获取日志:

LOG_PATH=$(docker inspect --format='{{.LogPath}}' <the-name-of-your-docker>)
echo ================= Docker log start ===========================
sudo cat $LOG_PATH
echo ================= Docker log end =============================

推荐阅读