尝试使用Spotify中的docker-client并遇到各种错误

时间:2016-02-29 00:26:31

标签: java docker

我希望能够从目前在Windows上运行的Java程序中与Docker进行交互。我按照此处的说明进行操作:https://github.com/spotify/docker-client

我创建了一个Maven项目,并尝试运行自述文件中指定的示例代码。我第一次得到"连接拒绝"错误但后来尝试通过指定uri创建DockerClient对象:

URI(URI.create(" UNIX:///var/run/docker.sock"))

这导致了UnsatisfiedLinkError:未知错误。它似乎是一个名为" c.dll"的库。正在寻找,当我创建一个名为this的假库并将其放在Library Path中的一个文件夹中时,我得到一个不同的错误:UnsatisfiedLinkError:操作成功完成。

我假设后一个错误来自c.dll没有正确的入口点。

所以我现在的问题是:我是否正确地假设使用URI创建DockerClient是正确的方法?如果是这样,它确实在寻找c.dll,如果是这样,我在哪里可以找到一个好的" c.dll所以代码可以工作吗?

或者是否有其他人设法让DockerClient代码在Windows上运行,也许无需找到正确的c.dll?

1 个答案:

答案 0 :(得分:0)

我想原因是此客户端不支持 npipe

但是不久前,它已在GitHub Pull请求Support windows named pipe中为该客户端实现。

现在,此客户端初始化也可在Windows中使用:

DockerClient docker = DefaultDockerClient.fromEnv().build();