docker - 如果构建失败,如何将文件从构建容器复制(记录)到主机?
问题描述
docker build
从 下的命令运行时,如何将一些日志文件从容器复制到主机Dockerfile
?一旦构建失败,构建容器就会消失。
一种方法是在每个 RUN 命令吞下非零退出代码后,将日志输出到 STDOUT,然后重新推送原始退出代码。但它似乎没有扩大,就像如果我们想复制整个目录,我们不会压缩并将其输出到控制台:P
有没有可能的潜在解决方案?也许将文件从主机连接到容器或在构建过程中安装目录?
解决方案
如果将日志推送到标准输出,则可以使用以下命令获取日志:
LOG_PATH=$(docker inspect --format='{{.LogPath}}' <the-name-of-your-docker>)
echo ================= Docker log start ===========================
sudo cat $LOG_PATH
echo ================= Docker log end =============================
推荐阅读
- php - 当日志显示已将请求重写为 php 文件时,Apache 仍会加载测试页面
- angular - Angular 7 - 通过 url 导航到动态路由
- mapbox-gl-js - 如何在 HTML 页面中嵌入 kepler.gl 地图?
- c++ - 如何廉价地将字符数组和数字合并在一起?
- docker - docker compose 中的环境变量
- c++ - 使用合并的#includes 转储 C++ 源代码
- java - JavaFX 11 Unicode 字符序列被反转
- c++ - 在 stl 地图中搜索
- python - Pandas 在没有连接字符串的情况下连接到 Oracle Db
- r - Dplyr 仅按月、日和年的差异过滤日期,而不是按日期本身