Jenkins Pipeline docker.build()给出错误'&引用;“docker build”;仅需要1个参数&x27;

Jenkins Pipeline docker.build()给出错误'&引用;“docker build”;仅需要1个参数&x27;,docker,jenkins,jenkins-pipeline,Docker,Jenkins,Jenkins Pipeline,使用这个最小的Jenkins管道脚本 node { docker.build("foo", "--build-arg x=y") } 我犯了一个令人困惑的错误 “docker build”只需要1个参数 但是根据文档,docker.build()的签名是build(image[,args])(来自Jenkins/job/dockerbug/pipeline syntax/globals#docker) build(图像[,参数]) 运行docker build以创建和标记指定的 来自当前目

使用这个最小的Jenkins管道脚本

node {
  docker.build("foo", "--build-arg x=y")
}
我犯了一个令人困惑的错误

“docker build”只需要1个参数

但是根据文档,
docker.build()
的签名是
build(image[,args])
(来自Jenkins
/job/dockerbug/pipeline syntax/globals#docker

build(图像[,参数])

运行docker build以创建和标记指定的 来自当前目录中Dockerfile的图像。可能会有其他参数 可以添加,例如
'-f Dockerfile.other--pull--build arg
http_代理=http://192.168.1.1:3128 
。与docker build一样,args必须 以构建上下文结束。返回结果图像对象。 从生成中的指纹记录


发生了什么事?

我的困惑是,错误消息实际上来自Docker,而不是Jenkins

如果您没有指定构建上下文(如上面文档中所述),Docker会给出此错误

修复方法只是按照示例将
添加到args参数的末尾,例如:

node {
  docker.build("foo", "--build-arg x=y .")
}

经过几天的搜索,我终于找到了它!感谢您意识到这个问题: