Docker API:使用path作为图像构建上下文

时间:2018-03-30 11:31:02

标签: docker docker-api

据我所知Docker API reference如果我有新图像的构建上下文,我必须创建一个tarball并通过remote param发送一个URI。这对我来说真的很不方便,因为我已经拥有与docker守护程序在同一主机上的所有东西。有可能以某种方式使用PATH,就像使用docker CLI一样吗?

docker built -t myimage:tag PATH

1 个答案:

答案 0 :(得分:0)

通常情况下,您可以将tar&#d; d文件发布为例如这里解释:Build image using dockerfile。在这种情况下,您根本不需要remote个参数。卷曲很容易。

如果您可能没有使用curl并且仍然不方便,您可以运行一个小型Docker容器,通过http为您的构建文件提供服务。

file://在当前版本的Docker中无效。也许它会在某个时候添加,但可能不会。支持git://

(以下是更多的一点,我希望这不会让你感到困惑。我建议不要使用它:)

阅读消息来源我偶然发现了一些不值得注意的事情?编码,如果目录名称以git@开头,并且位于dockerd守护程序的CWD中,您可以使用本地git存储库(可以使用ls -l /proc/`pidof dockerd`/cwd找到它。)&# 39; s可能是/。)。更进一步,如果您创建一个名为git@的符号链接并将其指向/,则可以git@/home/.../...访问您需要的任何其他目录。但是,此目录需要是一个包含所有内容的git存储库。

所以,我们假设我在git@的工作目录中有一个名为dockerd的目录,而在Dockerfile的工作目录中有一个名为FROM debian CMD sleep inf 的目录。内容:

curl http://localhost:2375/build?remote=git@

然后我可以使用:

构建它
comparator pq_cmp(query, d);
priority_queue <double* , vector<double*>, decltype(pq_cmp) > min_heap(pq_cmp);