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