在构建泊坞窗图像时是否可以显示`WORKDIR`?

Fre*_*ind 12 docker dockerfile

我们WORKDIR在构建docker镜像时遇到了问题.是否可以打印出值WORKDIR

我们尝试了:

ECHO ${WORKDIR}
Run Code Online (Sandbox Code Playgroud)

但是没有这样的指示 ECHO

eth*_*ist 17

该命令似乎最近发生了一些变化docker build,它stdout在构建过程中隐藏起来。

简而言之,用于DOCKER_BUILDKIT=0 docker build恢复“旧”行为。

参考


Mat*_*att 16

通过打印shell默认当前工作目录,可以查看构建步骤workdir:

RUN pwd
Run Code Online (Sandbox Code Playgroud)

或者shell环境也存储变量

RUN echo "$PWD"
Run Code Online (Sandbox Code Playgroud)

  • 尝试了“RUN pwd”和“CMD pwd”,它在构建图像时不会在控制台中打印任何内容。它仅打印到容器的控制台。 (3认同)

小智 12

您可以在 Dockerfile 中使用以下命令

RUN pwd && ls
Run Code Online (Sandbox Code Playgroud)

使用 --progress=plain 运行构建

docker build -t <image-name-you-want-to-give> --progress=plain .
Run Code Online (Sandbox Code Playgroud)


Evg*_*eny 11

您可以在构建步骤期间检查目录的内容并使用以下命令打印它

RUN ls
RUN ls ..
Run Code Online (Sandbox Code Playgroud)

在 ubuntu 20.04.4 LTS WSL2 下,我必须结合--progress=plain调试模式和无缓存才能查看输出:

docker -D build --progress=plain --no-cache. 
Run Code Online (Sandbox Code Playgroud)

  • 这也行不通。它只是显示命令的 sha,而不是实际的 echo 输出。 (3认同)