我的Dockerfile
中的片段:
FROM node:12.18.0
RUN echo "hello world"
RUN psql --version
当我运行docker build.
时,我看不到这两个命令的任何输出,即使它们没有被缓存。留档说docker build
默认情况下是冗长的。为什么我看不到命令的输出?我以前见过它们。
构建时的输出:
=> [7/18] RUN echo "hello world" 0.9s
建筑完工后我看到的输出:
=> CACHED [6/18] RUN apt-get install postgresql -y 0.0s
=> [7/18] RUN echo "hello world" 6.4s
=> [8/18] RUN psql --version 17.1s
Dockerfile
是从基于Debian 9的node: 12.18.0创建的。
Docker版本19.03.13,内部版本4484c46d9d。
在Docker 20.10中,我也必须使用--no cache标志。否则,不会显示缓存的输出。
docker build --progress=plain --no-cache .
只需在构建后使用此标志--progress=plain。
例如:
docker-compose build --progress=plain <container_name>
或
docker build --progress=plain .
如果您不想每次都使用此标志,请通过以下操作永久性地告诉docker使用此标志:
export BUILDKIT_PROGRESS=plain
这是您键入docker build-help时的官方文档。
--progress string Set type of progress output (auto, plain, tty). Use plain to show container output (default "auto")
您正在显示的输出来自buildkit,它是docker附带的经典构建引擎的替代品。您可以使用--进步
选项调整输出:
--progress string Set type of progress output (auto, plain, tty). Use plain to show container output
(default "auto")
添加--进步=平原
将显示未从缓存加载的运行命令的输出。
如果不想使用buildkit,可以通过在shell中导出DOCKER\u buildkit=0来还原到旧的生成引擎,例如:
DOCKER_BUILDKIT=0 docker build ...
或
export DOCKER_BUILDKIT=0
docker build ...
问题内容: 我已经给出了如下所示的命令行, 命令: 错误显示 sed:-e表达式#1,字符22:命令后的多余字符 同时将“ s”选项设置为 错误显示为 sed:-e表达式#1,字符32:`s’的未知选项 问题答案: 似乎某些变量正在扩展为包含的值。使用不包含在任何变量中的其他定界符,例如 (您的第一个命令不是有效的表达式。)
问题内容: 我已经给出了如下所示的命令行, 命令: 错误显示 sed:-e表达式#1,char 22:命令后的多余字符 同时将“ s”选项设置为 错误显示为 sed:-e表达式#1,字符32:`s’的未知选项 问题答案: 似乎某些变量正在扩展为包含的值。使用不包含在任何变量中的其他定界符,例如 (您的第一个命令不是有效的表达式。)
Computer says no. — Little Britain 一个问题的详细反馈会对解决问题有帮助。当你使用 exec 资源在节点上执行命令时, 并不总能轻易地找出其为何没有正确执行。如果命令返回一个非零的退出状态,Puppet 就会返回类似如下的错误消息: err: /Stage[main]//Node[cookbook]/Exec[this-will-fail]/returns: ch
问题内容: 我有一个可加载的内核模块,其初始化如下 我还启用了正在使用的内核版本上启用的动态调试-ie 。 在模块的Makefile中,我在其中添加了一行,即文件名。 现在,我在执行此模块的insmod后检查了一下,在其中发现了以下几行 即使做了所有这些,令我失望的是,在dmesg的输出中找不到上述两个pr_debug语句。那我想念什么或做错什么呢? 问题答案: 假设是模块源文件,请将以下内容添加
问题内容: 基本上我想知道为什么它什么都不输出: 您可以假设它应该产生输出,我已经运行另一行来确认 看来您不能多次通过管道传递tail的输出!有人知道这笔交易是什么,有解决方案吗? 编辑:到目前为止,要回答问题,该文件肯定具有应由grep显示的内容。作为grep是否这样做的证据: 输出正确显示,但是如果使用它代替: 没有输出显示。 如果真的有帮助,我正在运行ubuntu 10.04 问题答案: 在
为什么toGray函数不在设备上显示输出,下面是我将图像转换为灰度的代码,我将代码更改为函数,但它不显示输出: