docker用–build-arg构build多个参数

根据http://docs-stage.docker.com/v1.10/engine/reference/commandline/build/上的文档,可以为标志--build-arg定义多个参数,但是我不能找出如何。 我尝试了以下内容:

 docker build -t essearch/ess-elasticsearch:1.7.6 --build-arg number_of_shards=5 number_of_replicas=2 --no-cache . 

=>这将返回一个错误。

我也试过:

 docker build -t essearch/ess-elasticsearch:1.7.6 --build-arg number_of_shards=5,number_of_replicas=2 --no-cache . 

=>这将一个variablesnumber_of_shards设置为值“5,number_of_replicas = 2”

任何想法如何我可以定义多个参数?

对每个参数使用--build-arg

如果你传递两个参数,然后添加--build-arg与每个参数,如:

 docker build -t essearch/ess-elasticsearch:1.7.6 --build-arg number_of_shards=5 --build-arg number_of_replicas=2 --no-cache . 

由pl_rock的上述答案是正确的,我会添加的唯一的事情是期待在Dockerfile中的ARG,如果不是,你将无法访问它。 所以,如果你在做

 docker build -t essearch/ess-elasticsearch:1.7.6 --build-arg number_of_shards=5 --build-arg number_of_replicas=2 --no-cache . 

然后在Dockerfile里面添加

 ARG number_of_replicas ARG number_of_shards 

我遇到了这个问题,所以我希望在未来帮助一个人(我自己)。

我们也需要多个ARG,这是一个耻辱,它会导致多个层次,并因此而降低构build速度,对于任何人也想知道,目前没有办法设置多个ARG。