@@ -869,6 +869,7 @@ func (daemon *Daemon) initNetworkController(config *config.Config, activeSandbox
869
869
870
870
if len (activeSandboxes ) > 0 {
871
871
logrus .Info ("There are old running containers, the network config will not take affect" )
872
+ setHostGatewayIP (daemon .configStore , controller )
872
873
return controller , nil
873
874
}
874
875
@@ -906,19 +907,26 @@ func (daemon *Daemon) initNetworkController(config *config.Config, activeSandbox
906
907
}
907
908
908
909
// Set HostGatewayIP to the default bridge's IP if it is empty
909
- if daemon .configStore .HostGatewayIP == nil && controller != nil {
910
- if n , err := controller .NetworkByName ("bridge" ); err == nil {
911
- v4Info , v6Info := n .Info ().IpamInfo ()
912
- var gateway net.IP
913
- if len (v4Info ) > 0 {
914
- gateway = v4Info [0 ].Gateway .IP
915
- } else if len (v6Info ) > 0 {
916
- gateway = v6Info [0 ].Gateway .IP
917
- }
918
- daemon .configStore .HostGatewayIP = gateway
910
+ setHostGatewayIP (daemon .configStore , controller )
911
+
912
+ return controller , nil
913
+ }
914
+
915
+ // setHostGatewayIP sets cfg.HostGatewayIP to the default bridge's IP if it is empty.
916
+ func setHostGatewayIP (config * config.Config , controller libnetwork.NetworkController ) {
917
+ if config .HostGatewayIP != nil {
918
+ return
919
+ }
920
+ if n , err := controller .NetworkByName ("bridge" ); err == nil {
921
+ v4Info , v6Info := n .Info ().IpamInfo ()
922
+ var gateway net.IP
923
+ if len (v4Info ) > 0 {
924
+ gateway = v4Info [0 ].Gateway .IP
925
+ } else if len (v6Info ) > 0 {
926
+ gateway = v6Info [0 ].Gateway .IP
919
927
}
928
+ config .HostGatewayIP = gateway
920
929
}
921
- return controller , nil
922
930
}
923
931
924
932
func driverOptions (config * config.Config ) nwconfig.Option {
0 commit comments