Mi host es SLES12 VM que se ejecuta en un servidor ESX. VM Host tiene interfaces que adquieren IP DHCP del servidor DHCP que se ejecuta en ESX.
En mi contenedor acoplable (imagen acoplable: opensuse) estoy ejecutando un servidor NFS y, por lo tanto, necesito acceso externo. Quiero que el contenedor adquiera la IP dhcp del servidor dhcp que se ejecuta en ESX (al igual que mi Host VM).
Probé las tuberías pero no pude hacer que funcionara. Aquí esta lo que hice:
Modo promiscuo habilitado en ESX. Creó un nuevo puente (br1) y
lo adjuntó a la interfaz Host eth0.
El uso de pipework agregó una nueva interfaz (eth1) en el contenedor Docker con una dirección IP usando este comando pipework br1 $CONTAINERID 0/0
Después intenté asignar IP DHCP a la nueva interfaz (eth1) del contenedor, usando el comando pipework eth1 $CONTAINERID dhclient
Pero obtuve el siguiente error: RTNETLINK answers: File exists
Para resolver esto, descargué el dispositivo eth1 en el contenedor y ejecuté el comando nuevamente. Observo que mi daemon docker se estrelló. Versión de Docker: 1.12.3 (tanto cliente como servidor).
Por favor, hágame saber lo que me estoy perdiendo aquí. Quiero que las interfaces de mi contenedor adquieran las direcciones IP DHCP del servidor DHCP que se ejecuta en ESX.
Deberá crear una red docker con el controlador macvlan o ipvlan. Luego, deberá usar el controlador DHCP IPAM (IPAM significa Administración de direcciones IP).
Aquí hay una esencia con algunas explicaciones de cómo hacer algo similar: https://gist.github.com/nerdalert/3d2b891d41e0fa8d688c