hashicorp/nomad · error
Port %q cannot be mapped to negative value %d
Error message
Port %q cannot be mapped to negative value %d
What it means
TaskGroup network validation: a port's 'to' mapping was less than -1. -1 is the sentinel meaning "same as value"; any value below that is not a valid destination port.
Source
Thrown at nomad/structs/structs.go:7367
staticPorts = make(map[int]string)
}
// static port
if other, ok := staticPorts[port.Value]; ok {
if !port.IgnoreCollision {
err := fmt.Errorf("Static port %d already reserved by %s", port.Value, other)
mErr.Errors = append(mErr.Errors, err)
}
} else if port.Value > math.MaxUint16 {
err := fmt.Errorf("Port %s (%d) cannot be greater than %d", port.Label, port.Value, math.MaxUint16)
mErr.Errors = append(mErr.Errors, err)
} else {
staticPorts[port.Value] = fmt.Sprintf("taskgroup network:%s", port.Label)
staticPortsIndex[hostNetwork] = staticPorts
}
}
if port.To < -1 {
err := fmt.Errorf("Port %q cannot be mapped to negative value %d", port.Label, port.To)
mErr.Errors = append(mErr.Errors, err)
} else if port.To > math.MaxUint16 {
err := fmt.Errorf("Port %q cannot be mapped to a port (%d) greater than %d", port.Label, port.To, math.MaxUint16)
mErr.Errors = append(mErr.Errors, err)
}
if port.IgnoreCollision && !(net.Mode == "" || net.Mode == "host") {
err := fmt.Errorf("Port %q collision may not be ignored on non-host network mode %q", port.Label, net.Mode)
mErr.Errors = append(mErr.Errors, err)
}
}
// Validate the cniArgs in each network resource. Make sure there are no duplicate Args in
// different network resources or invalid characters (;) in key or value ;)
if net.CNI != nil {
for k, v := range net.CNI.Args {
if cniArgKeys.Contains(k) {
err := fmt.Errorf("duplicate CNI arg %q", k)
mErr.Errors = append(mErr.Errors, err)View on GitHub (pinned to 482b49bf1a)
Solutions
- Set to to a port in 0-65535, or -1 to map to the same port as value
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at nomad/structs/structs.go:7367 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of hashicorp/nomad@482b49bf1a (2026-09-04).
Data as JSON: /api/errors/c4c09dd7dc80722a.
Report an issue: GitHub.