我有一个Dockerfile,该文件可以访问一个变量,该变量指示该目标环境。我们的CICD管道使该环境变量可用于Dockerfile,我可以使用“如果$ Environment =“,则运行。
当我检测到“测试”环境时,需要即时创建另一个环境变量。但是,这样的代码似乎不起作用:
如果$ Environment =“ test”则运行;然后 ; / ENV NewEnvironmentVariable =“测试”; / fi
运行时找不到“ ENV”。所以很明显,您不能在RUN .. if。
中以这种方式使用ENV。但是我可以使用bash命令导出变量,但是它可能是在不同的上下文中创建此导出的,因此Dockerfile无法访问它。我本以为导出该文件将使新的环境变量成为Docker文件(当它从“ if”块返回时)。
简而言之,我只需要评估和现有的环境变量,如果它包含我要查找的值,它将创建一个新的ENV变量,就像我已经完成“ ENV MyNewVar = 1”一样。
这可能吗?
谢谢