如何将一个环境variables转换成一个dockerfile

我怎样才能将一个环境variables转移到dockerfile中?

该variables是dynamic的,所以我不能使用ENV来做到这一点。

$( dirname "${BASH_SOURCE[0]}" )是告诉bash脚本的位置的方法。 Dockerfile如何知道它所在的path?

使用ENV指令,例如ENV abc 123请参阅文档https://docs.docker.com/reference/builder/摘录

ENV指令将环境variables设置为该值。 这个值将在所有“后代”Dockerfile命令的环境中,并且可以在许多内联中被replace。

ENV指令有两种forms。 第一种formsENV将单个variables设置为一个值

所以我不认为我们可以猜测目录

dockerfile可以告诉它存储在哪个目录中?

通常你创build一个特定的目录,在里面创build你的Dockerfile,把需要的文件(你将复制ADD或者COPY )和启动docker build . (和最近版本的docker像1.5,你可以指定你使用的Dockerfile的位置

从文档提取http://docs.docker.com/reference/commandline/build/

-f, --file="" Name of the Dockerfile (Default is 'PATH/Dockerfile')

dockerfile可以告诉它存储在哪个目录中?

除非你使用一些技巧,我不认为。 有什么意义?