Laravel Docker - SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known
Stefan Bogdanescu
Founder & Senior Architect · 2026-06-29
Solving the Docker Networking Nightmare: Fixing SQLSTATE[HY000] in Laravel
As a senior developer working with containerized applications, I frequently encounter frustrating issues where application logic seems fine, but database connections fail within the Docker environment. The error you are seeing—SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known—is a classic symptom of misconfigured networking between services inside Docker.
This post will dissect why this happens in your Laravel/Docker setup and provide the definitive, practical solution to establish reliable communication between your PHP application container and your MySQL database container.
Understanding the Root Cause: Docker Networking vs. Localhost
The error getaddrinfo failed indicates that the system running the PHP process inside the container cannot resolve the hostname you provided (like localhost or mysql) into an IP address. This is a networking issue, not necessarily a database credential issue.
When you run services using Docker Compose, each service lives on its own isolated network bridge. Crucially, **inside one container, localhost refers only