{"id":"c587496137e2c9cc","repo":"docker/cli","slug":"invalid-hostport-binding-s-for-port-d","errorCode":null,"errorMessage":"invalid hostport binding (%s) for port (%d)","messagePattern":"invalid hostport binding \\((.+?)\\) for port \\((.+?)\\)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"opts/swarmopts/port.go","lineNumber":172,"sourceCode":"func (p *PortOpt) Value() []swarm.PortConfig {\n\treturn p.ports\n}\n\n// ConvertPortToPortConfig converts ports to the swarm type\nfunc ConvertPortToPortConfig(\n\tportProto network.Port,\n\tportBindings map[nat.Port][]nat.PortBinding,\n) ([]swarm.PortConfig, error) {\n\tports := make([]swarm.PortConfig, 0, len(portBindings))\n\tfor _, binding := range portBindings[nat.Port(portProto.String())] {\n\t\tif p := net.ParseIP(binding.HostIP); p != nil && !p.IsUnspecified() {\n\t\t\t// TODO(thaJeztah): use context-logger, so that this output can be suppressed (in tests).\n\t\t\tlogrus.Warnf(\"ignoring IP-address (%s:%s) service will listen on '0.0.0.0'\", net.JoinHostPort(binding.HostIP, binding.HostPort), portProto.String())\n\t\t}\n\n\t\tpr, err := network.ParsePortRange(binding.HostPort)\n\t\tif err != nil && binding.HostPort != \"\" {\n\t\t\treturn nil, fmt.Errorf(\"invalid hostport binding (%s) for port (%d)\", binding.HostPort, portProto.Num())\n\t\t}\n\n\t\tfor p := range pr.All() {\n\t\t\tports = append(ports, swarm.PortConfig{\n\t\t\t\t// TODO Name: ?\n\t\t\t\tProtocol:      portProto.Proto(),\n\t\t\t\tTargetPort:    uint32(portProto.Num()),\n\t\t\t\tPublishedPort: uint32(p.Num()),\n\t\t\t\tPublishMode:   swarm.PortConfigPublishModeIngress,\n\t\t\t})\n\t\t}\n\t}\n\treturn ports, nil\n}\n","sourceCodeStart":154,"sourceCodeEnd":187,"githubUrl":"https://github.com/docker/cli/blob/e9452d6e785f6e365712b9d71bd7517591773c86/opts/swarmopts/port.go#L154-L187","documentation":"Error \"invalid hostport binding (%s) for port (%d)\" thrown in docker/cli.","triggerScenarios":"Thrown at opts/swarmopts/port.go:172 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"analyzedSha":"e9452d6e785f6e365712b9d71bd7517591773c86","analyzedAt":"2026-08-01T07:09:22.474Z","schemaVersion":2}