Conéctese al contenedor de docker usando IP

Estoy ejecutando los siguientes commands:

$ docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS default * virtualbox Running tcp://192.168.99.100:2376 v17.06.2-ce $ docker-machine ip default 192.168.99.100 

Y tengo algunos contenedores docker. Una vez que está ejecutando django , otro postgres y una tercera búsqueda elástica.

Cuando estoy ejecutando mi contenedor django con:

 # python manage.py runserver 0:8000 

Y funciona cuando uso el sitio:

 localhost:8000/ 

Pero, no está disponible cuando uso: 192.168.99.100:8000 Ahí, tengo el post del browser:

Este sitio no puede ser alcanzado

192.168.99.100 se negó a conectarse. Intente: verificar la connection

Lo mismo ocurre con el contenedor postgres y el contenedor elasticseach .

¿Por qué mi contenedor docker no está aplicando la default docker-machine ip ?

Parece que no le ha dicho a Docker que hable con su VM y que sus contenedores se estén ejecutando en su equipo host.

Resolver:

  1. Baja tus contenedores

  2. Ejecute $ eval "$(docker-machine env default)" que establece las siguientes variables de entorno:

     export DOCKER_TLS_VERIFY="1" export DOCKER_HOST="tcp://xxxx:2376" export DOCKER_CERT_PATH="/Users/<yourusername>/.docker/machine/machines/default" export DOCKER_MACHINE_NAME="default" 

    Esto le dice a Docker cómo hablar con su máquina virtual.

  3. Contenedores de vuelta atrás