Con una versión más reciente de docker, esto podría hacerse con docker-compose y su extra_hostsdirectiva
Agregue asignaciones de nombres de host.
Utilice los mismos valores que el parámetro del docker runcliente--add-host (que ya debería estar disponible para Docker 1.8).
extra_hosts:
- "somehost:162.242.195.82"
- "otherhost:50.31.209.229"
En resumen: modifica /etc/hoststu contenedor al ejecutarlo, no al construirlo.
Con Docker 17.x +, se docker build --add-hostmenciona a continuación , pero, como se comentó en el número 34078 y en esta respuesta :
La --add-hostfunción durante la compilación está diseñada para permitir anular un host durante la compilación, pero no para conservar esa configuración en la imagen.
Las soluciones mencionadas se refieren al docker-compose que sugería anteriormente:
- Ejecute un DNS interno; puede configurar el servidor DNS predeterminado para usar en el demonio; de esa manera, cada contenedor iniciado usará automáticamente el DNS configurado por defecto
- Use docker compose y proporcione un
docker-compose.ymla sus desarrolladores.
El archivo de composición de la ventana acoplable le permite especificar todas las opciones que se deben usar al iniciar un contenedor, por lo que los desarrolladores pueden simplemente componer la ventana acoplable para iniciar el contenedor con todas las opciones que necesitan configurar.