Sandbox Reachability Checklist

Use this when something is running but you cannot reach it from your browser, another container, another laptop, or a hardware device.

1. Process The app is listening on the right port and bind address.
2. Sandbox The container, VM, or dev sandbox allows that port out.
3. Host The host has an interface and firewall rule that accepts the connection.
4. Network The client can route to the host or device IP.
5. Service The service accepts the request, credentials, and protocol.

Address Meanings

Address What it means Who can reach it
127.0.0.1 Loopback inside the current network namespace. Only processes in that same namespace.
0.0.0.0 Bind on all IPv4 interfaces in the current namespace. Anyone who can reach an interface where firewall and routing allow it.
192.168.x.y, 10.x.y.z Private LAN address on a host or hardware device. Usually devices on the same LAN, VPN, or routed subnet.
Container IP Address inside a Docker bridge or container network. Usually the host and containers on that network, not arbitrary LAN devices.

Docker Port Patterns

Command shape Result Use when
-p 127.0.0.1:8080:80 Host-only access on port 8080. You are testing locally and do not want LAN access.
-p 8080:80 Publishes on all host interfaces by default. You deliberately want other reachable clients to try the service.
EXPOSE 80 Documents intended container port. It does not publish by itself. You are writing Dockerfiles or Compose files.
Publishing a port broadly is a real exposure decision. For experiments, prefer loopback binding first, then widen deliberately.

Fast Diagnostics

# Is something listening locally?
lsof -nP -iTCP:8080 -sTCP:LISTEN

# Try the service from this machine.
curl -v http://127.0.0.1:8080/

# Find a macOS LAN IP.
ipconfig getifaddr en0

# Find common Linux LAN IPs.
hostname -I

# Try a LAN address from another device.
curl -v http://HOST_LAN_IP:8080/

Hardware Translation

For a Raspberry Pi or similar Linux device, first find the device address, then SSH in, then repeat the same listening and publishing checks on that device.

ping raspberrypi.local
ssh USER@raspberrypi.local
hostname -I
ss -ltnp

References

Docker port publishing, Linux network namespaces, Raspberry Pi remote access.