首页 > 解决方案 > docker buildargs 通过 JSON?

问题描述

我正在尝试构建一个 docker 映像并尝试使用 docker-api 来实现这一点。目的是使用 docker api 将 buildargs 传递给 docker 映像:https ://www.rubydoc.info/github/swipely/docker-api/Docker%2FImage.build_from_dir 文档说为了将 buildargs 传递opts给 api以上:

构建时变量的字符串对的 JSON 映射。用户在构建时传递这些值。Docker 使用 buildargs 作为通过 Dockerfile RUN 指令运行的命令的环境上下文,或者用于其他 Dockerfile 指令中的变量扩展。这并不意味着传递秘密值。阅读有关 buildargs 指令的更多信息。

以下代码仅适用于“t”(标签)。

Docker::Image.build_from_dir(Dir.pwd, 't' => "MyTag", 'buildargs' => "{ABC = > 'abc', CDE => 'cde'}")

但是,当我添加“buildargs”时,出现以下错误:

Excon::Error::Socket: Broken pipe (Errno::EPIPE)
  <internal:prelude>:134:in `__write_nonblock'
  <internal:prelude>:134:in `write_nonblock'

标签: docker

解决方案


推荐阅读