当前位置: 首页 > 面试题库 >

Docker Maven插件ClientProtocolException(使用Docker Toolbox的Windows 10)

萧辰沛
2023-03-14
问题内容

我正在尝试使用docker-maven-plugin(由
spotify 提供:https : //github.com/spotify/docker-maven-plugin提供)构建docker映像,但
实际上并没有解决问题。一开始我遇到了这个异常:

org.apache.http.conn.HttpHostConnectException: Connect to localhost:2375

我发现必须创建一个环境。变量来解决这个问题
(https://github.com/spotify/docker-maven-plugin/issues/135):

set DOCKER_HOST=set DOCKER_HOST=tcp://192.168.99.100:2376

docker_host

So after setting that env. variable I keep getting this
ClientProtocolException:

[ERROR] Failed to execute goal com.spotify:docker-maven-plugin:0.3.258:build (default-cli) on project docker_micro_maven: Exception caught: java.util.concurrent.ExecutionException: com.spotify.docker.client.shaded.javax.ws.rs.ProcessingException: org.apache.http.client.ClientProtocolException: The server failed to respond with a valid HTTP response

我不知道如何解决此问题,我们将不胜感激。


问题答案:

您必须使用主机在2375端口上侦听来配置virtualbox端口转发:

> VBoxManage modifyvm "default" --natpf1 "guestssh,tcp,,2375,,2376"

guestsh是端口转发的名称,您可以选择名称。

如果 VBoxManage 无法识别,则可以用完整路径替换它:

“pathVirtualBox\VBoxManage.exe”

然后,如果出现类似“服务器无法通过有效的HTTP响应进行响应”这样的问题,则将certs文件从
“%USER%.docker \ machines \ certs” 复制到“%USER%.docker”,从而
导致docker -maven-plugin在“%USER%.docker”中读取此文件(不要复制目录证书,仅复制文件)。

我认为我们可以重写Maven属性以替换端口2375和certs路径,但我仍然找不到它。



 类似资料:
  • 问题内容: 我正在使用以下代码从Web服务器请求xml: 当我调用httpclient.execute(httpget,responseHandler)时,我得到一个clientProtocolException。该URL在Web浏览器中工作正常,它返回xml,然后浏览器显示它。 有什么想法为什么我会得到一个clientProtocolException而浏览器却能很好地处理它? 编辑1: 查看协

  • (本章内容原稿已经遗失,15.12.30 新增内容) Webstorm 的插件丰富程度无法跟 eclipse、sublime text、vim 相比,但 Webstorm 本身就足够强大,并不大需要安装太多插件。 下面以 Markdown 预览插件的安装讲解如何安装插件。 通过 IDE 直接安装插件 进入 “Preferences” ,搜索 “plugins” ,进入插件页面: 搜索 markdo

  • 想项目中添加插件的新方法不仅仅是一种更为方便的语法.新的DSL语法处理与老方法有很大的不同.新的机制允许Gradle更早更快的确定插件.这允许做更智能的事,如: 优化插件类的加载和重用. 允许不同的插件使用不同版本的依赖关系. 为编辑构建脚本提供关于隐含属性和值的详细信息 这要求插件被指定使Gradle在执行之前剩下的构建脚本前可以很容易并且很快的提取它.还要求插件使用一些静态的定义。 新的插件机

  • 插件DSL正在孵化(incubating)中,请注意,在以后的Gradle版本中,DSL和其它配置可能会改变. 新的插件DSL提供了更为简洁,方便的方式来声明插件的依赖关系。它的适用于与新的Gradle Plugin Portal,同时提供了方便的核心和社区插件.该插件脚本块配置PluginDependenciesSpec的实例. 要应用的核心插件,可以使用短名称: Example 21.5. A

  • 什么是插件? 插件可以扩展工程构建定义,通常是增加一些新的配置,配置可以是任务配置,例如,一个插件可以增加一个codeCoverage 的任务配置,用来生成项目单元测试的代码覆盖率报告。 使用插件 如果一个项目的目录为hello, 并且在该项目中使用sbt-site这个插件,只需创建一个名为hello/project/site.sbt配置文件,并且通过addSbtPlugin方法申明该插件的Ivy

  • Gulp 插件实质上是 Node 转换流(Transform Streams),它封装了通过管道(pipeline)转换文件的常见功能,通常是使用 .pipe() 方法并放在 src() 和 dest() 之间。他们可以更改经过流(stream)的每个文件的文件名、元数据或文件内容。 托管在 npm 上的插件 - 标记有 "gulpplugin" 和 "gulpfriendly" 关键词 - 可以