mirror of
https://github.com/moby/moby.git
synced 2026-01-11 10:41:43 +00:00
windows: do not forgot IPAM configuration when re-creating networks
Signed-off-by: Olli Janatuinen <olli.janatuinen@gmail.com>
This commit is contained in:
@@ -265,7 +265,7 @@ func (daemon *Daemon) initNetworkController(daemonCfg *config.Config, activeSand
|
||||
if !found {
|
||||
// non-default nat networks should be re-created if missing from HNS
|
||||
if v.Type() == "nat" && v.Name() != networktypes.NetworkNat {
|
||||
_, _, v4Conf, v6Conf := v.IpamConfig()
|
||||
ipamDriver, ipamOptions, v4Conf, v6Conf := v.IpamConfig()
|
||||
netOption := map[string]string{}
|
||||
for k, v := range v.DriverOptions() {
|
||||
if k != winlibnetwork.NetworkName && k != winlibnetwork.HNSID {
|
||||
@@ -284,7 +284,7 @@ func (daemon *Daemon) initNetworkController(daemonCfg *config.Config, activeSand
|
||||
libnetwork.NetworkOptionGeneric(options.Generic{
|
||||
netlabel.GenericData: netOption,
|
||||
}),
|
||||
libnetwork.NetworkOptionIpam("default", "", v4Conf, v6Conf, nil),
|
||||
libnetwork.NetworkOptionIpam(ipamDriver, "", v4Conf, v6Conf, ipamOptions),
|
||||
libnetwork.NetworkOptionLabels(v.Labels()),
|
||||
)
|
||||
if err != nil {
|
||||
@@ -342,6 +342,8 @@ func (daemon *Daemon) initNetworkController(daemonCfg *config.Config, activeSand
|
||||
drvOptions := make(map[string]string)
|
||||
var labels map[string]string
|
||||
nid := ""
|
||||
ipamDriver := "default"
|
||||
var ipamOptions map[string]string
|
||||
if n != nil {
|
||||
nid = n.ID()
|
||||
|
||||
@@ -350,6 +352,8 @@ func (daemon *Daemon) initNetworkController(daemonCfg *config.Config, activeSand
|
||||
continue
|
||||
}
|
||||
v.Name = n.Name()
|
||||
ipamDriver, ipamOptions, _, _ = n.IpamConfig()
|
||||
|
||||
// This will not cause network delete from HNS as the network
|
||||
// is not yet populated in the libnetwork windows driver
|
||||
|
||||
@@ -406,7 +410,7 @@ func (daemon *Daemon) initNetworkController(daemonCfg *config.Config, activeSand
|
||||
netlabel.GenericData: netOption,
|
||||
netlabel.EnableIPv4: true,
|
||||
}),
|
||||
libnetwork.NetworkOptionIpam("default", "", v4Conf, v6Conf, nil),
|
||||
libnetwork.NetworkOptionIpam(ipamDriver, "", v4Conf, v6Conf, ipamOptions),
|
||||
libnetwork.NetworkOptionLabels(labels),
|
||||
)
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user