Skip to content

Docker quickstart unhealthy on Ubuntu 24.04: health check fails due to IPv6/IPv4 localhost mismatch #4917

Description

@munyanezaarmel

Environment

  • OS: Ubuntu 24.04 LTS (Noble)
  • Kernel: 6.5.0-41-generic x86_64
  • Docker version: 27.3.1, build ce12230
  • Archestra version: 1.2.50 (platform:latest)

What happened

After running the quickstart Docker command, the container starts but
immediately shows as (unhealthy) and http://localhost:3000 is
unreachable from the browser with ERR_SOCKET_NOT_CONNECTED.

Root cause

The health check is defined as:
wget --no-verbose --tries=1 --spider http://localhost:3000/ || exit 1

On Ubuntu 24.04, localhost resolves to ::1 (IPv6) by default.
However, the Next.js frontend binds only to 127.0.0.1 (IPv4).
So wget connects to [::1]:3000 and gets "Connection refused" —
even though the frontend is running perfectly on 127.0.0.1:3000.

Evidence from docker inspect:
"Output": "Connecting to localhost:3000 ([::1]:3000)\nwget: can't connect to remote host: Connection refused\n"

Confirmed the frontend IS running — this returns HTML:
docker exec wget -qO- http://127.0.0.1:3000/

Backend health also confirmed working:
docker exec wget -qO- http://127.0.0.1:9000/health
{"name":"Archestra","status":"ok","version":"1.2.50"}

Workaround

Adding 127.0.0.1 localhost to /etc/hosts forces localhost to
resolve to IPv4 and fixes the issue immediately:
command used : echo "127.0.0.1 localhost" | sudo tee -a /etc/hosts

Suggested fix

Change the health check from:
wget --spider http://localhost:3000/
to:
wget --spider http://127.0.0.1:3000/
This avoids DNS/hosts resolution entirely and works regardless of
whether the host system prefers IPv4 or IPv6 for localhost.

Impact

This affects any user running the Docker quickstart on Ubuntu 20.04+
or any Linux system where IPv6 is enabled by default, which is the
majority of modern Linux desktop and server installations.


Archestra Contributor

Metadata

Metadata

Assignees

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