Gradle Docker osx 上的插件损坏管道

Gradle Docker plugin broken pipe on osx

嗨,我尝试使用这个很棒的 Gradle 插件:https://github.com/bmuschko/gradle-docker-plugin 我使用以下 URL 从 docker-machine / kitematic 安装获得 osx:

docker-machine url default
tcp://192.168.99.100:2376

然而使用:

url = "tcp://192.168.99.100:2376"

导致错误:

org.apache.http.conn.UnsupportedSchemeException: tcp protocol is not supported

当我将 tcp 更改为 http 时,出现了不同的错误:

INFO org.apache.http.impl.execchain.RetryExec - I/O exception (java.net.SocketException) caught when processing request: Broken pipe
[pool-4-thread-1] ERROR com.github.dockerjava.core.async.ResultCallbackTemplate - Error during callback
org.apache.http.client.ClientProtocolException

如果 gradle dockerBuildImage 任务是 运行。 但是手动构建 gradle 创建的 Dockerfile 没有任何问题。

以下代码可用于重现该问题。 https://github.com/geoHeil/lab04/blob/master/build.gradle

Docker-机器默认启用TLS。我切换到TLS模式应该是一个很好的解决方案:

url = 'https://192.168.59.103:2376'
certPath = new File(System.properties['user.home'], '.boot2docker/certs/boot2docker-vm')