Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 从中生成参数为的docker映像失败_Linux_Docker_Dockerfile_Containers_Fabric8 - Fatal编程技术网

Linux 从中生成参数为的docker映像失败

Linux 从中生成参数为的docker映像失败,linux,docker,dockerfile,containers,fabric8,Linux,Docker,Dockerfile,Containers,Fabric8,我想把论点传给我的dockerfile。参数应该是FROM命令的一部分。因此,我有下面的Dockerfile: ARG argument=123 FROM baseImage:$argument 但当我试图构建它时,我收到以下错误: DOCKER>无法检查图像[baseImage:$argument]:没有这样的图像:baseImage:$argument:无效的引用格式(错误请求:400) Docker版本 Client: Version: 17.12.1-ce API ve

我想把论点传给我的dockerfile。参数应该是FROM命令的一部分。因此,我有下面的Dockerfile:

ARG argument=123
FROM baseImage:$argument
但当我试图构建它时,我收到以下错误:

DOCKER>无法检查图像[baseImage:$argument]:没有这样的图像:baseImage:$argument:无效的引用格式(错误请求:400)

Docker版本

Client:
 Version:       17.12.1-ce
 API version:   1.35
 Go version:    go1.9.4
 Git commit:    7390fc6
 Built: Tue Feb 27 22:15:20 2018
 OS/Arch:       linux/amd64

Server:
 Engine:
  Version:      17.12.1-ce
  API version:  1.35 (minimum version 1.12)
  Go version:   go1.9.4
  Git commit:   7390fc6
  Built:        Tue Feb 27 22:17:54 2018
  OS/Arch:      linux/amd64
  Experimental: false

阅读文档我看到这样的格式是正确的,但是它不起作用。感谢您的帮助。

旧版本的Docker不支持
ARG
之前的
FROM
。我不记得它被更改的确切版本,但我相信支持是在17.X系列之后添加的。

所以问题在于fabric8插件。 描述


目前,我在Dockerfile中添加了占位符,并使用maven resources插件进行筛选,以便用值替换占位符。它成功了。

我在某个地方看到它的版本超过了17个。05@liotur他们在17.05中添加了多映像构建支持,之前的ARG支持在之后的某个时候出现,但我不确定它在17.12版本中是否存在。看这里,我看到了我所需要的一个功能-顺便说一下,我也在使用fabric8插件,也许有一个模板化dockerfile的选项?可能是fabric8-你发布的语法对于最新的Docker版本绝对有效。我会怀疑老的Docker版本或fabric8是问题所在。