有没有办法将WORKDIR更改为第一个匹配模式的文件夹?就像这样
SHELL ["/bin/bash", "-c"]
RUN pattern=mypattern*
RUN files=( $pattern )
WORKDIR $files与我的本地终端行为不同,files变量仍然是空的,即使当前的WORKDIR是正确的,并且文件夹肯定是基于docker buil日志存在的。
编辑:为了清楚起见,使用案例如下:
有一个Go包(lilliput),它附带了预先构建的二进制文件,但这些二进制文件不能在我们的docker想象的运行平台上工作。谢天谢地,这个包为这种情况提供了一个build_deps.sh,但这必须从包安装文件夹中执行。这个文件夹将有一个基于包发布版本的任意名称(例如lilliput@v0.0.0-20210720001558-e1547514bd5f )目标是模式匹配此文件夹和lilliput*,切换WORKDIR并在那里开始依赖项构建。
发布于 2021-08-05 12:03:42
您可以尝试在buiild docker文件中使用ENV变量或args
https://stackoverflow.com/questions/68666041
复制相似问题