2016-12-07 3 views
0

Résuméclient (navigateur, pilote jdbc) se bloque lorsque vous essayez de se connecter avec instance docker

client (navigateur, lecteur jdbc) la connexion à docker pend.

Contexte

Je joue avec docker et trouvé une bizarrerie: des choses en cours d'exécution sur mon système d'exploitation hôte (navigateur, pilote JDBC) « se bloque » essayant de se connecter à docker.

J'ai conclu le problème est causé par « docker » et « ma configuration » par rapport aux images elles-mêmes, en raison du fait que le problème apparaît:

  • avec les deux images officielles Tomcat ainsi qu'avec Microsoft nouvelle image Sql Server
  • après que je l'ai exécuté avec succès une fois docker

uSECASE

  1. Boot mon ordinateur portable (ubuntu 14.04)
  2. Mise en service docker (voir l'annexe)
  3. Connexion avec le navigateur http://localhost:8888/. Résultat: Succès

  4. Arrêtez exemple docker: 'ctrl-c'

  5. Démarrage docker à nouveau (Répétez l'étape 2)
  6. Essayez de vous connecter avec le navigateur Résultat: navigateur se bloque/tours pendant 20 minutes, que dit "avortés"

Remarques

  • Docker démarre sans erreur dans les deux étapes
  • Après l'arrêt (étape 4), "netstat -aon | grep 8888" ne montre rien. Comme aucun "processus malveillant" n'écoute sur le port 888
  • Parce que le navigateur "se bloque", plutôt que de dire "connexion refusée", j'ai conclu que Docker écoute sur le port, mais ne fait rien d'autre.

Version Info

  • Ubuntu 14.04
  • la version 1.9 Docker.1, construire a34a1d5

Annexe A: fichier Docker et commandes

Dockerfile

Dockerfile: FROM tomcat:8.5.8-jre8-alpine 

Commandes

Créer une image:

$ docker build -t mytomcat_858 . 

Début:

$ docker run -it --rm -p 8888:8080 mytomcat_858 

Répondre

0

je trouve, sinon la cause, au moins solution: redémarrer le démon docker éclairci toutes les questions de mise en réseau:

# /etc/init.d/docker restart 
0

Quelle commande vous exécutez pour commencer Docker la deuxième fois? docker démarrer mytomcat_858? Si elle démarre correctement la deuxième fois, pouvez-vous faire docker attacher mytomcat_858 et voir les erreurs possibles de Tomcat?

+0

J'ai mis à jour la publication pour inclure la commande: docker run -it --rm -p 8888: 8080 mytomcat_858 – user331465

+0

Avez-vous essayé d'exécuter docker en mode démon au lieu d'interactivement? – bytebybyte

0

Essayez d'exécuter docker ce qui suit: docker run -d -p 8888 : 8080 mytomcat_858 Ensuite, Vous pouvez faire docker arrêter mytomcat_858, et docker démarrer mytomcat_858 pour arrêter et démarrer le processus. Ne répétez pas la commande d'exécution du docker pour la deuxième fois.