diff --git a/daemon/network.go b/daemon/network.go index c01a7a9e88..f44b628659 100644 --- a/daemon/network.go +++ b/daemon/network.go @@ -875,12 +875,9 @@ func buildCreateEndpointOptions(c *container.Container, n *libnetwork.Network, e if err != nil { return nil, err } - - genericOption := options.Generic{ + createOptions = append(createOptions, libnetwork.EndpointOptionGeneric(options.Generic{ netlabel.MacAddress: mac, - } - - createOptions = append(createOptions, libnetwork.EndpointOptionGeneric(genericOption)) + })) } } @@ -904,12 +901,10 @@ func buildCreateEndpointOptions(c *container.Container, n *libnetwork.Network, e } } - portSpecs := c.Config.ExposedPorts - ports := make([]nat.Port, len(portSpecs)) - var i int - for p := range portSpecs { - ports[i] = p - i++ + // TODO(thaJeztah): Move this code to a method on nat.PortSet. + ports := make([]nat.Port, 0, len(c.Config.ExposedPorts)) + for p := range c.Config.ExposedPorts { + ports = append(ports, p) } nat.SortPortMap(ports, bindings) @@ -918,12 +913,14 @@ func buildCreateEndpointOptions(c *container.Container, n *libnetwork.Network, e publishedPorts []networktypes.PortBinding ) for _, port := range ports { - expose := networktypes.TransportPort{} - expose.Proto = networktypes.ParseProtocol(port.Proto()) - expose.Port = uint16(port.Int()) - exposedPorts = append(exposedPorts, expose) + portProto := networktypes.ParseProtocol(port.Proto()) + portNum := uint16(port.Int()) + exposedPorts = append(exposedPorts, networktypes.TransportPort{ + Proto: portProto, + Port: portNum, + }) - pb := networktypes.PortBinding{Port: expose.Port, Proto: expose.Proto} + pb := networktypes.PortBinding{Port: portNum, Proto: portProto} binding := bindings[port] for i := 0; i < len(binding); i++ { pbCopy := pb.GetCopy() @@ -946,17 +943,10 @@ func buildCreateEndpointOptions(c *container.Container, n *libnetwork.Network, e } } - var dns []string - if len(c.HostConfig.DNS) > 0 { - dns = c.HostConfig.DNS + createOptions = append(createOptions, libnetwork.CreateOptionDNS(c.HostConfig.DNS)) } else if len(daemonDNS) > 0 { - dns = daemonDNS - } - - if len(dns) > 0 { - createOptions = append(createOptions, - libnetwork.CreateOptionDNS(dns)) + createOptions = append(createOptions, libnetwork.CreateOptionDNS(daemonDNS)) } createOptions = append(createOptions, libnetwork.CreateOptionPortMapping(publishedPorts), libnetwork.CreateOptionExposedPorts(exposedPorts))