diff --git a/daemon/container_operations_unix.go b/daemon/container_operations_unix.go index 0a361a6924..2970cca93f 100644 --- a/daemon/container_operations_unix.go +++ b/daemon/container_operations_unix.go @@ -757,21 +757,20 @@ func (daemon *Daemon) connectToNetwork(container *container.Container, idOrName return nil } - if !containertypes.NetworkMode(idOrName).IsUserDefined() && hasUserDefinedIPAddress(endpointConfig) { - return runconfig.ErrUnsupportedNetworkAndIP - } - - if !containertypes.NetworkMode(idOrName).IsUserDefined() && len(endpointConfig.Aliases) > 0 { - return runconfig.ErrUnsupportedNetworkAndAlias - } - controller := daemon.netController - if err := validateNetworkingConfig(n, endpointConfig); err != nil { - return err - } - if endpointConfig != nil { + if !containertypes.NetworkMode(idOrName).IsUserDefined() && hasUserDefinedIPAddress(endpointConfig) { + return runconfig.ErrUnsupportedNetworkAndIP + } + + if err := validateNetworkingConfig(n, endpointConfig); err != nil { + return err + } + + if !containertypes.NetworkMode(idOrName).IsUserDefined() && len(endpointConfig.Aliases) > 0 { + return runconfig.ErrUnsupportedNetworkAndAlias + } container.NetworkSettings.Networks[n.Name()] = endpointConfig }