¿Es --hostname
como un sistema de nombres de dominio en un entorno de contenedor docker que puede reemplazar --ip
cuando se refiere a otro contenedor?
El indicador --hostname
solo cambia el nombre de host dentro de su contenedor. Esto puede ser necesario si su aplicación espera un valor específico para el nombre de host. No cambia el DNS fuera de la ventana acoplable, ni cambia el aislamiento de la red, por lo que no permitirá que otros se conecten al contenedor con ese nombre.
Puede usar el nombre del contenedor o la identificación del contenedor (breve, 12 caracteres) para conectarse de un contenedor a otro con el dns incrustado de docker, siempre que tenga ambos contenedores en la misma red y esa red no sea el puente predeterminado.
--hostname
es un parámetro que se puede proporcionar junto con el comando de docker run
que establecerá el nombre especificado como nombre de host del contenedor, mientras que --ip
es un parámetro para establecer una dirección IP específica (ipv4) para ese contenedor en particular.
docker run --hostname test --ip 10.1.2.3 ubuntu:14.04
El siguiente comando creará un contenedor docker con la imagen base como ubuntu-14.04 con el nombre de host como prueba y la dirección IP del contenedor como 10.1.2.3
Si necesita cambiar el nombre de host de manera que otros contenedores de la misma red lo vean, simplemente use --net-alias=${MY_NEW_DNS_NAME}
Por ejemplo:
docker run -d --net-alias=${MY_NEW_DNS_NAME} --net=my-test-env --name=my-docker-name-test <dokcer-contanier>
Consulte: ¿Diferencia entre --link y --alias en la red acoplable superpuesta?