not library hub from found for error docker docker-machine

docker - library - Error al verificar la conexión TLS: Error al verificar y/o regenerar los certificados



docker registry (8)

Después de investigar un poco, descubrí que la siguiente solución puede resolver el problema por ahora:

  1. Red abierta y centro de intercambio de

  2. Haga clic en Cambiar configuración del adaptador

  3. Vea si tiene adaptadores habilitados como VPN o adaptadores de red VM Ware.

  4. Intenta desactivarlos e intenta conectarse a tu contenedor una vez más

  5. Si no funcionó mientras tenías otros adaptadores desactivados, reinicia tu PC, en mi caso, esto funcionó para mí.

Después de reiniciar mis ventanas, no puedo conectarme a la máquina de la ventana acoplable que se ejecuta en Oracle Virtual Box. Cuando comienzo a Docker QuickStart Terminal, todo se ve bien, sale bien y me da este mensaje:

docker is configured to use the default machine with IP 192.168.99.100 For help getting started, check out the docs at https://docs.docker.com

pero cuando lo hago:

$ docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS default - virtualbox Timeout

y:

λ docker images An error occurred trying to connect: Get http://localhost:2375/v1.21/images/json: dial tcp 127.0.0.1:2375: ConnectEx tcp: No connection could be made because the target machine actively refused it.

también cuando intento reinicializar mi env., obtengo:

λ docker-machine env default Error checking TLS connection: Error checking and/or regenerating the certs: There was an error validating certificates for host "192.168.99.100:2376": dial tcp 192.168.99.100:2376: i/o timeout You can attempt to regenerate them using ''docker-machine regenerate-certs [name]''. Be advised that this will trigger a Docker daemon restart which will stop running containers.

Por cierto, los certificados de regeneración tampoco ayudan. ¿Alguna idea?

Gracias.


En mi caso, fue mi FortiClient que causó el problema. Después de deshabilitarlo, la docker-machine env default funcionó bien nuevamente. Le sugiero que verifique si hay algún programa antivirus en ejecución en su sistema.


Esto es lo que funcionó para mí. Los primeros pasos son similares a los propuestos por Hazhir, seguidos de regenerar los certificados.

  1. Red abierta y centro de intercambio de.
  2. Haga clic en Cambiar configuración del adaptador.
  3. Desactive todos los adaptadores de red activos de VMWare. Por lo general, tiene la explicación "VirtualBox Host-Only Ethernet Adapter".
  4. Conéctese a su contenedor ejecutando docker-machine start .
  5. Ejecutar docker-machine env . Si eres como yo, obtendrías el siguiente error:

Error al verificar la conexión TLS: Error al verificar y / o regenerar los certificados: hubo un error al validar los certificados para el host "192.168.99.100:2376": x509: el certificado es válido para 192.168.99.101, no 192.168.99.100

Lo que es bueno. Ahora todo lo que tenemos que hacer es correr

docker-machine regenerate-certs -f default

Luego probarlo de nuevo con el docker-machine env . Si lo consigues:

SET DOCKER_TLS_VERIFY=1 SET DOCKER_HOST=tcp://192.168.99.100:2376 SET DOCKER_CERT_PATH=C:/Users/Jay/.docker/machine/machines/default SET DOCKER_MACHINE_NAME=default REM Run this command to configure your shell: REM FOR /f "tokens=*" %i IN (''docker-machine env'') DO %i

Entonces estás listo. En mi caso, necesitaba iniciar mi máquina virtual ejecutando Docker Quickstart Terminal.


Esto funcionó para mí:

  • Eliminé todas las interfaces de host solo de mi virtualbox (VirtualBox => Preferences => Network => Host-only networks).
  • rmdir.exe --ignore-fail-on-non-empty ~/.docker/
  • docker-machine start
  • docker-machine env
  • eval $("C:/Program Files/Docker Toolbox/docker-machine.exe" env default) (agregado también al final de mi .bash_profile .
  • docker run hello-world <- ahora rorking

Inspirado en un post aquí .


Intente de esta manera / solución:

  • En primer lugar, asegúrese de que haya ca.pem, cert.pem, key.pem, ca-key.pem en $ yourhome / .docker / machine / certs / folder, para estos cuatro archivos perdidos * .pem, puede copiarlos de otros lugares o tal vez crearlos ustedes mismos (estos cuatro archivos pem seguramente no son correctos al principio)
  • asegúrese de que env está configurado correctamente en bash_profile, como: export DOCKER_HOST = tcp: //192.168.99.100: 2376 export DOCKER_MACHINE_NAME = predeterminado export DOCKER_TLS_VERIFY = 1 export DOCKER_CERT_PATH = / Users / johnwang / .docker / machine / machines
  • vuelva a ejecutar el cmd: docker-machine regenerate-certs predeterminado (tal vez antes de ejecutar esto, necesita volver a abrir el terminal de la ventana acoplable) Probado en la caja de herramientas de la ventana acoplable en mac, y funciona.
  • Finalmente, algunos registros del resultado: Error al verificar la conexión TLS: Error al verificar y / o regenerar los certificados: Se produjo un error al validar los certificados del host "192.168.99.100:2376": x509: certificado firmado por una autoridad desconocida. Puede intentar regenerarlos. utilizando ''docker-machine regenerate-certs [nombre]''. Tenga en cuenta que esto activará un reinicio del demonio Docker que podría dejar de ejecutar contenedores. ... ... johns-MacBook-Pro: certs johnwang $ docker-machine regenerate-certs predeterminado Regenerate TLS machine certs? Advertencia: esto es irreversible. (y / n): y Regeneración de certificados TLS En espera de que SSH esté disponible ... Detectando el aprovisionador ... Copiando certificados en el directorio de la máquina local ... Copiando certificados en la máquina remota ... Configurando la configuración de Docker en el control remoto daemon ... johns-MacBook-Pro: certs johnwang $ docker-machine ls NOMBRE ACTIVE DRIVER STATE URL ERRORES DE DOCKER SWARM predeterminados - virtualbox Ejecutando tcp: //192.168.99.100: 2376 v17.03.1-ce

Espero que ayude también a ver mi respuesta aquí: https://github.com/docker/machine/issues/2808


La forma en que me aseguro de poder conectarme a las máquinas de mi docker es asignándoles una IP fija (y regenerando los certificados solo una vez) (no es necesario reiniciar)

Después de eso, el docker-machine ls siempre funciona.

Mi guión actual:
(Reemplace %PRGS%/dm/latest por la ruta donde se encuentra docker-machine.exe en su máquina)
(asegúrese de que PATH incluya la última / ruta / a / git / usr / bin , para que los comandos como ssh estén disponibles)

> more dmvbf.bat @echo off setlocal enabledelayedexpansion set machine=%1 if "%machine%" == "" ( echo dmvbf expects a machine name exit /b 1 ) set ipx=%2 if "%ipx%" == "" ( echo dmvbf x missing ^(for 192.168.x.y^) exit /b 2 ) set ipy=%3 if "%ipy%" == "" ( echo dmvbf y missing ^(for 192.168.x.y^) exit /b 3 ) %PRGS%/dm/latest/docker-machine.exe ssh %machine% "sudo sh -c ''echo /"kill /$(more /var/run/udhcpc.eth1.pid)/" | sudo tee /var/lib/boot2docker/bootsync.sh >/dev/null''" %PRGS%/dm/latest/docker-machine ssh %machine% "sudo sh -c ''echo /"ifconfig eth1 192.168.%ipx%.%ipy% netmask 255.255.255.0 broadcast 192.168.%ipx%.255 up/" | sudo tee -a /var/lib/boot2docker/bootsync.sh >/dev/null''" %PRGS%/dm/latest/docker-machine ssh %machine% "sudo chmod 755 /var/lib/boot2docker/bootsync.sh" %PRGS%/dm/latest/docker-machine ssh %machine% "sudo cat /var/run/udhcpc.eth1.pid | xargs sudo kill" %PRGS%/dm/latest/docker-machine ssh %machine% "sudo ifconfig eth1 192.168.%ipx%.%ipy% netmask 255.255.255.0 broadcast 192.168.%ipx%.255 up"

Por ejemplo:

dmvbf default 99 100 docker-machine regenerate-certs -f default

Eso asignará 192.168.99.100 a la máquina de conexión por default ''por default '', y regenerará los certificados una vez.
Luego, cada vez que se llama a docker-machine ls , se mostrará la misma IP para '' default ''.


Por favor, intente regenerar certificados manualmente por:

docker-machine --debug regenerate-certs -f default

y compruebe si hay errores para corregir, luego intente de nuevo:

docker-machine --debug env default

Si falla en ssh, copie y pegue ese comando en la terminal para ver cuál es el problema agregando extra -vv .

Si tienes:

debug1: conectarse a la dirección 127.0.0.1 puerto 64368: conexión rechazada

entonces su máquina no se está ejecutando ( docker-machine ls en docker-machine ls ), así que intente:

docker-machine start

A continuación, intente ssh a través de:

docker-machine -D ssh default


Tengo este problema también. Ejecutar docker-machine regenerate-certs <vm-name> no puede resolver el problema. Busco en Google la información de error y encuentro la solución a continuación.

  • ejecute sudo ifconfig vboxnet0 up en el terminal.
  • mostrar el estado de la máquina docker: docker-machine ls .
  • ahora STATE y URL están bien.

Pero reinicie el sistema este problema persiste.

GitHub emite enlace que encontré aquí.

Parece que hay un bug en VirtualBox 5.1.24.