docker - 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'
解决方案
推荐阅读
- xamarin - Xamarin Forms - ScrollView 如何检查是否滚动到底部
- ios - iOS 13 不显示俄罗斯卢布 (₽) unicode 符号
- android - 我可以对 Koin 模块进行单元测试吗?
- python-3.x - 是否可以忽略 Python3 中模块的所有成员?
- angular - 在使用 httpclient 从 @angular/common/http 以角度进行休息调用时,可以覆盖超过 2 分钟的超时值
- sql-server - How can I replace two characters in a single word with wildcard if the two characters are included in wild card definition in MSQL
- django - Django 多个用户组
- gpflow - GPflow,bvh:ValueError:平均值必须是一维的
- java - 在 Linux Mint 19x 中更改 JAVA_HOME 值
- angular - Angular6中的单元测试输入事件