Error map
NSURLErrorDomain Code=-1009 Error Domain=NSURLErrorDomain Code=-1009 "The Internet connection appears to be offline."
iOS · layer 1, On your device
Centre: this error. First ring: errors it is linked with (7). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.
Directly related (7)
Error Domain=NSURLErrorDomain Code=-1001 "The request timed out."
The server didn’t respond within URLSession’s timeout (60 s default) — slow server, unreachable host on this network, or a stalle…
android.os.NetworkOnMainThreadException
The app made a network call on the main (UI) thread, which Android forbids.
driver failed programming external connectivity on endpoint: iptables: No chain/target/match by that name
Docker’s iptables rules were wiped (firewalld/ufw reload, iptables flush) while Docker was running, so it can’t publish ports.
ECS task stopped: CannotPullContainerError: pull image manifest has been retried ... / ref pull has been retried
The ECS task couldn’t pull its image — no network route to the registry, missing ECR permissions, or a wrong image tag.
Error response from daemon: Pool overlaps with other one on this address space
Docker tried to create a network whose subnet clashes with an existing Docker network (or a VPN/host route).
Error response from daemon: network X not found
The container or Compose project refers to a Docker network that doesn’t exist (any more).
App Transport Security has blocked a cleartext HTTP resource load
iOS blocked an `http://` request (or a weak-TLS HTTPS one) because App Transport Security requires secure connections.
Two steps away (21)
MySQL ERROR 2006 (HY000): MySQL server has gone away
The connection to MySQL was closed — usually by a timeout or a packet larger than `max_allowed_packet`.
HTTP 408 Request Timeout
The server closed the connection because the client took too long to send the complete request.
HTTP 499 Client Closed Request (Nginx)
Nginx-specific code logged when the client disconnected before the server finished responding.
Ingress returns "404 Not Found" / "default backend - 404" (ingress-nginx)
The ingress controller received the request but no Ingress rule matched the host/path, so it answered with its default backend.
Service has no endpoints (no endpoints available for service / Endpoints: <none>)
The Service’s selector matches no ready pods, so traffic to it is refused or returns 503.
DNS not working inside a Kubernetes pod (could not resolve host / nslookup: can't resolve)
Pods can’t resolve service names or external hosts — CoreDNS is down, blocked by NetworkPolicy, or the upstream resolver fails.
Error: listen EADDRINUSE: address already in use :::3000
Another process is already listening on that port.
Docker: Bind for 0.0.0.0:80 failed: port is already allocated
Another container or host process already publishes that host port.
Cloudflare Error 1020: Access Denied
A Cloudflare firewall/WAF custom rule blocked the request — the visitor’s IP, country, user agent or request pattern matched a bl…
Kubernetes: ImagePullBackOff / ErrImagePull
The node can’t pull the container image — wrong name/tag, missing registry credentials, or registry unreachable.
npm ERR! code EROFS — EROFS: read-only file system
npm tried to write to a read-only location (read-only container filesystem, mounted volume, or system path).
denied: Your authorization token has expired. Reauthenticate and try again. (Amazon ECR)
Docker’s login to Amazon ECR has expired — ECR tokens last 12 hours, so pushes and pulls fail until you log in again.
docker compose: services.x Additional property y is not allowed / yaml: line N: mapping values are not allowed
The compose file is invalid YAML or uses a key Compose doesn’t recognise at that level (usually an indentation mistake).
docker-compose: command not found / 'compose' is not a docker command
Your system has only one of the two Compose flavours: the old docker-compose (v1) binary or the newer docker compose (v2) plugin.
service "web" depends on undefined service "db": invalid compose project
A service lists depends_on (or links/networks) for a service name that isn’t defined in the Compose file(s) being used.
WARN: the attribute `version` is obsolete, it will be ignored
A harmless Compose v2 warning: the top-level version: line in docker-compose.yml is no longer used.
Docker container is unhealthy (health check failing)
The container is running, but its HEALTHCHECK command keeps failing, so Docker (and dependent services) consider it unhealthy.
spec.ports[0].nodePort: Invalid value: 80: provided port is not in the valid range. The range of valid ports is 30000-32767
A NodePort Service asked for a port outside the cluster’s NodePort range (default 30000–32767).
Mixed Content: The page was loaded over HTTPS, but requested an insecure resource
An HTTPS page tried to load a script, API or image over plain HTTP, and the browser blocked (or warned about) it.
CLEARTEXT communication to host not permitted by network security policy
Android 9+ blocks plain `http://` requests by default; the app tried to call a non-HTTPS URL.
fatal: Authentication failed for 'https://github.com/x/y.git/'
HTTPS authentication to the Git host failed — wrong or expired credentials, or a password used where a token is required.
Map another error
Popular: 4035004000xC000007BTypeErrorCritical error404NullPointerException