Keeping Xyte Edge Online on Docker Desktop

Main use case: an Edge host that has to keep running unattended, and doesn't.

The Edge shows offline in Xyte, and it only comes back when somebody connects to the machine and restarts Docker or the xyte_edge container. Typical signs:

  • The Edge drops every few days with no pattern anyone can point to.
  • Docker Desktop turns out not to be running, even though it is set to start automatically.
  • Restarting the container brings it back, sometimes only after a second attempt.
  • Nobody trusts the offline alerts any more, because so many of them clear on their own.

If that is your situation, the container is not the problem. Docker Desktop is a desktop application, and a desktop application only runs when a user is logged in, the machine is awake, and nothing has decided to save power. An Edge host has to keep running when nobody is at the keyboard, so the changes worth making are to what the host does while you are away — rather than getting faster at restarting the container.

📘

This page is a set of recommendations for running the Edge on a host that stays up unattended.

Xyte provides the Edge container. The operating system, Docker, virtualization and the local network sit with you or your IT team — so take the parts that fit your environment.

Each recommendation says what to change, and how to check whether it helped.


Work out which of the three causes you have

All three look identical in the Xyte portal — the Edge goes offline, then comes back when someone intervenes. They are told apart on the host.

Run the checks below after the next time it goes offline, before restarting anything. They point you at one of the three causes — you only need that cause's tab, not all of them.

Run this on the Edge hostWhat you seeWhat it means
docker psError: cannot connect to the Docker daemon / pipe not foundCause A — Docker Desktop was not running. The engine stopped with the user session, a reboot, or a crash. See the Cause A tab.
docker ps -axyte_edge is listed as Exited or Created, not UpCause B — the engine came back but the container did not. See the Cause B tab.
docker ps then docker logs --timestamps --since 24h xyte_edgexyte_edge is Up, and the log shows repeated Unable to connect … connection timed out, Will try to reconnect, or getaddrinfo() … Unknown errorCause C — the container ran the whole time but could not reach Xyte. See the Cause C tab.
📘

Timestamps are the proof.

Compare the first failure line in docker logs --timestamps with the time the Edge went offline in the Xyte portal (Edge → Incidents).

If the log is silent across the outage, the container was not running — that is Cause A or B, not a network problem.


Checklist

#CheckDone when
1Docker starts without anybody logging inThe Edge returns after an unattended reboot
2xyte_edge restart policy is always or unless-stoppeddocker inspect shows it
3Resource Saver off, host sleep and hibernation offSettings and power profile confirmed
4macOS: kernel networking for UDP on, Docker Engine DNS left empty24 hours of logs with no getaddrinfo errors
5Notification delay set on the spaces that alert mostFewer self-resolving alerts

Related guides


Still offline?

Collect the logs and send them to [email protected] with the times the Edge was offline:

docker logs --timestamps xyte_edge > xyte_edge_logs.txt 2>&1

Did this page help you?