Debido a problemas con los portales cautivos y el rango predeterminado de Docker IP, estoy tratando de hacer que Docker use el rango 198.18.0.0, en lugar de 172.17.0.0, que choca con los portales cautivos utilizados en los trenes donde vivo.
Siguiendo los documentos , creé /etc/docker/daemon.jsony puse lo siguiente en él:
{
"bip":"198.18.0.0/16"
}
Esto funcionó para docker0, pero parece que no ha afectado a ninguna de las otras redes, y al usar docker componer, la primera red creada es 172.17.0.0, que recrea el choque.
¿Qué puedo hacer para cambiar la subred predeterminada para todas las redes de acopladores (preferiblemente sin tener que indicar mi rango de IP personalizado en cada archivo de redacción)?
fuente

Hay tres lugares donde Docker generará subredes de red.
Para el puente predeterminado (llamado "puente"), puede especificar BIP (creo que es IP de puente; asegúrese de que sea una IP de host, no una IP de red ) en el
daemon.jsonarchivo. Y para las redes puente generadas por el usuario, puede definir un grupo de subredes para elegir (suponiendo que el usuario no especifique manualmente una subred). Para estos dos,/etc/docker/daemon.jsonse vería así:Cada configuración de grupo de direcciones anterior define un rango CIDR y el tamaño de las subredes que se asignarán desde ese rango. Entonces, lo anterior define dos rangos de clase B que se asignan como redes de clase C (/ 24). Necesita al menos 18.06 para los grupos de direcciones predeterminados. Deberá volver a cargar el demonio de Docker para que se aplique este cambio (
systemctl reload docker). Y este cambio solo modificará las redes de usuarios recién creadas, por lo que deberá detener los contenedores y eliminar las redes existentes en el rango incorrecto.En 18.09, Docker agregó la capacidad de especificar el rango de direcciones para redes superpuestas generadas en modo enjambre. Esto solo se puede hacer en el momento de la creación del enjambre en este momento, es de esperar que se actualice en el futuro para permitir
docker swarm updateajustar estos grupos:fuente
bipopción en la GUI de Configuración / Preferencias. Paradefault-address-poolsque pueda editar el daemon.json manualmente en esa misma GUI, y para los enjambresdefault-addr-poolaún puede cambiarlos con elinitcomando.Configure la red de puente predeterminada : "... Para configurar la red de puente predeterminada, especifique las opciones en daemon.json. Aquí hay un ejemplo de daemon.json con varias opciones especificadas. Solo especifique la configuración que necesita personalizar ..."
Con componer: especifique redes personalizadas : "... En lugar de usar la red de aplicaciones predeterminada, puede especificar sus propias redes con la clave de redes de nivel superior. Esto le permite crear topologías más complejas y especificar controladores y opciones de red personalizados. También puede úsela para conectar servicios a redes creadas externamente que no sean administradas por Compose ... "
fuente
Puede ser un poco brutal, pero simplemente hago una
sudo ifconfig docker0 downpara cerrar la interfaz que está en conflicto con el wifi que estoy tratando de usar.fuente