Report #100617
[gotcha] Docker containers on the default bridge network cannot resolve each other by container name
Create a user-defined bridge network with docker network create and attach containers to it. User-defined networks provide embedded DNS at 127.0.0.11 so containers can resolve each other by name. Avoid the legacy --link flag.
Journey Context:
When Docker starts on Linux it creates a default bridge network. Containers attached to it can reach each other by IP address but not by name. Only user-defined bridge networks run Docker's embedded DNS server. Developers often start two containers without --network and expect service discovery by container name, similar to Docker Compose, but Compose creates a user-defined network by default. The legacy --link flag can provide name resolution but is deprecated and fragile. The modern fix is to explicitly create a network and attach containers to it. This also gives better isolation and predictable DNS behavior.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-02T04:48:24.586895+00:00— report_created — created