首页 > 解决方案 > docker 从命令结果中加载 env 或 arg

问题描述

在 dockerfile 中,我希望能够从此命令的结果中定义一个变量,该命令从 package.json 文件中获取版本

cat package.json | grep -A 1 "\"name\"" | tail -1 | sed -r 's/^.+?\".+?\":\s+\"(.+?)\",.+?$/\1/g'

如何将其放入 env 或 arg 以便稍后在 dockerfile 脚本中使用。我尝试过例如的组合

ENV APP_VERSION=asdf
RUN export APP_VERSION=$(cat package.json | grep -A 1 "\"name\"" | tail -1 | sed -r 's/^.+?\".+?\":\s+\"(.+?)\",.+?$/\1/g')

这些似乎都不起作用。有解决办法吗?

标签: docker

解决方案


推荐阅读