Skip to content

Local development login fails because backend cannot resolve db in Docker Compose #1374

@Zhey-on

Description

@Zhey-on

Summary

In local development, login with the seeded demo user can fail even with correct credentials because backend DB hostname resolution breaks inside Docker.

Steps to reproduce

  1. Start local dev stack with docker compose up -d.
  2. Try to login from frontend using:
    • email: demo_company_admin@example.com
    • password: 123123
  3. Or call backend directly:
    • POST /api/auth/login

Expected behavior

Login returns a JWT token.

Actual behavior

Login fails with server-side errors similar to:

SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo for db failed: Temporary failure in name resolution

Root cause

In this environment, service/container DNS aliases (db, and in some cases redis) were not consistently resolvable from backend containers.

Proposed fix

Add explicit network aliases on the default compose network:

  • mysql: aliases db, mysql
  • redis: alias redis

Apply the same fix in:

  • docker-compose.yml
  • docker-compose-prod.yml
  • docker-compose-dockerhub.yml

Then recreate containers with docker compose up -d --force-recreate.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions