Docker Core
The requested subnet range collides with an address pool already in use.
pool-overlapsReviewed for reference consistency: August 11, 2026
The requested subnet range collides with an address pool already in use.
What pool-overlaps Means
The pool-overlaps error on the Docker Core indicates the requested subnet range collides with an address pool already in use.. This typically occurs due to the requested subnet intersects an existing docker network's pool.
Creating a network with an explicit subnet asks the address manager to reserve that range. When the range intersects any existing network's pool, including the daemon's default address pools, creation is refused with the pool-overlaps message and nothing is created.
How to fix pool-overlaps
General informational guidance, not professional advice. Commands can affect your system or data — back up first and proceed at your own risk. FixerCode is an independent reference, not affiliated with any vendor mentioned.
Show the subnets live networks occupy
Inspecting a network's IPAM configuration prints the ranges already reserved on this daemon.
docker network inspect bridge --format '{{range .IPAM.Config}}{{.Subnet}}{{end}}'Check the host route table for the range
The route listing reveals non-Docker claims such as VPN tunnels over the requested private range.
ip route show
Technical Background
The address manager refuses overlaps because two live networks sharing a range would break routing determinism; the refusal happens at creation, so no half-built network is left behind.
Fixed subnets are usually unnecessary: networks created without an explicit subnet receive an allocation from the configured pools, which avoids the collision class entirely.
Common Causes
- The requested subnet intersects an existing Docker network's pool
- The daemon's default address pools already cover the requested range
- A host route or VPN occupies the same private range
Typical Scenarios
- Manually creating a network with a range adjacent to the daemon's defaults
- Two compose projects pinning identical fixed subnets
- A VPN routing table claiming the same private range the network requests
What to Know
The error appears during create rather than container start, so the affected scope is small: the requested range and the existing allocations, both visible in the network listing, are the entire picture.
Frequently Asked Questions
Common questions about Docker pool-overlaps error
An explicit subnet is an explicit instruction; silently allocating a different range would violate the request, so the manager refuses instead of guessing.
No. Built-in networks are provisioned from the daemon's pools at startup and do not participate in manual subnet collisions.
Related Error Codes
The kernel refused the bind because a live socket already occupies the address.
A command referenced a network name or ID the daemon has no record of.
The daemon returned a structured error response carrying the failure detail.
Related Errors From Other Categories
Similar error codes documented across different platforms and systems