AIO mastercontainer exits with curl: (6) Could not resolve host: ghcr.io, while the same image can reach ghcr.io successfully

Some or all of the below information will be requested if it isn’t supplied; for fastest response please provide as much as you can. :heart:

I have spent several weeks debugging this and intentionally excluded the common causes (DNS, firewall, Pi-hole, VPN, Docker DNS, bridge networking).

Are you using the latest AIO image?

Yes.

Image:

ghcr.io/nextcloud-releases/all-in-one:latest

Created:

2026-06-26T08:34:24Z

Digest:

sha256:e7abd7c7f4f28ec63971e92fdcb03d361a85cd3e7d83cd50d19c375cad623614

Host system

Hardware:

  • Raspberry Pi 4 (8 GB)

OS:

  • Debian GNU/Linux 13 (Trixie)

Kernel:

  • 6.18.34+rpt-rpi-v8

Docker:

  • Docker Engine Community 29.6.1
  • Compose v5.3.0

Storage:

  • overlayfs
  • Docker Root Dir: /var/lib/docker

Problem

The AIO mastercontainer immediately exits with

curl: (6) Could not resolve host: ghcr.io

Could not reach https://ghcr.io.

Most likely is something blocking access to it.

The strange part

Everything else can resolve and reach ghcr.io.

Host:

ping ghcr.io

works.

Host:

curl -I https://ghcr.io

works.

Container:

docker run --rm alpine nslookup ghcr.io

works.

Container:

docker run --rm alpine sh -c "apk add --no-cache curl >/dev/null && curl -I https://ghcr.io"

works.

Even the SAME AIO image works:

docker run --rm 
--entrypoint /bin/bash 
ghcr.io/nextcloud-releases/all-in-one:latest 
-c "curl -I https://ghcr.io/v2/"

returns HTTP/2 405 successfully.

So the image itself clearly has working DNS/network access.

Docker DNS

daemon.json

{
  "dns": [
    "8.8.8.8",
    "1.1.1.1"
  ]
}

Host resolv.conf

nameserver 8.8.8.8
nameserver 1.1.1.1

Docker network

bridge network exists normally.

iptables looks normal.

No custom firewall.

No Pi-hole.

No proxy.

No VPN inside Docker.

Tailscale was stopped during testing.

Container

Entrypoint:

/start.sh

CMD:

null

NetworkMode:

bridge

What looks inconsistent

Inside /start.sh the following check exists:

if ! curl --no-progress-meter https://ghcr.io/v2/ >/dev/null; then

This curl reports

curl: (6) Could not resolve host: ghcr.io

However running exactly the same curl manually from the same image succeeds.

So it appears the startup environment behaves differently from a normal shell started from the image.

Question

Is this a known issue with

  • Docker Engine 29.6.x
  • Debian 13 (Trixie)
  • Raspberry Pi arm64

or is there another reason why curl inside /start.sh cannot resolve ghcr.io while the exact same image can?

Hi, have you able to fix you issue? I have the same problem, dns works perfectly everywhere except in nextcloud containters start.

Did you recently upgrade the Docker Engine by chance?

There have been DNS resolution problems from time to time; also things like pre-existing containers (pre-engine) needing to be recreated after Engine upgrades to get DNS resolution back, etc.