8
votes

Docker Maven Plugin ClientProtocolException (Windows 10 à l'aide de la boîte à outils Docker)

J'essaie de construire une image Docker à l'aide du docker-maven-plugin (fourni par Spotify: https://github.com/spotify/docker-maven-plugin ) mais les choses ne se produisent pas vraiment. Au début, j'ai eu cette exception:

[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


0 commentaires

3 Réponses :


5
votes

Vous devez configurer le transfert de port VirtualBox avec l'hôte Écouter sur 2375 Port:

> VboxManage Modifyvm "Par défaut" --NATPF1 "Invité, TCP , 2375 , 2376"

Les clientsSH sont le nom du transfert de port, vous pouvez choisir le nom.

Si vboxmanage n'est pas reconnu, vous pouvez le remplacer par un chemin complet:

"pathvirtualbox \ vboxmanage.exe"

et après si vous avez un problème comme "Le serveur n'a pas réussi à répondre avec une réponse HTTP valide" Copier les fichiers certs de
"% utilisateur% .Docker \ machines \ certs"
à
"% utilisateur% .Docker"
Cause Docker-Maven-Plugin Lisez ces fichiers dans "% utilisateur% .Docker" (ne copiez pas les certificats de répertoires, uniquement des fichiers).

Je pense que nous pouvons remplacer les propriétés Maven pour remplacer le port 2375 et le chemin certifié, mais je ne le trouve pas toujours.


1 commentaires

Dommage que je ne puisse pas donner cette réponse plus upvotes. Si le transfert de port a configuré précédemment trouver cette réponse, mais qu'il était toujours en difficulté avec " le serveur n'a pas réussi à répondre avec une réponse HTTP valide ". Après avoir copié des certificats comme suggéré dans cette réponse, tout a commencé à travailler comme prévu. Grand merci!



3
votes

corrigé cela par: xxx pré>

important sont ces deux étiquettes: p>

<dockerDirectory>src/main/docker</dockerDirectory>  


0 commentaires

0
votes

Docker-Machine env Par défaut

set DOCKER_HOST=tcp://192.168.99.100:2376
set DOCKER_MACHINE_NAME=default
set DOCKER_TLS_VERIFY=1
set DOCKER_TOOLBOX_INSTALL_PATH=C:\Program Files\Docker Toolbox
set DOCKER_CERT_PATH=C:\Users\panhl-a\.docker\machine\machines\default


0 commentaires