diff --git a/internal/api/stacks.go b/internal/api/stacks.go index 5e3c42b..061ad5c 100644 --- a/internal/api/stacks.go +++ b/internal/api/stacks.go @@ -809,6 +809,10 @@ func checkImages(ctx context.Context, images []string) []imageCheck { // machineUpdates checks every image on this machine in one pass, so the container list can // be coloured and "what is behind?" answered without walking stack by stack. func (s *Server) machineUpdates(w http.ResponseWriter, r *http.Request) { + if dockerTool() == "" { // no Docker is an empty answer, not a failure + jsonOK(w, 200, map[string]any{"images": []imageCheck{}, "checked": 0, "stacks": map[string][]string{}}) + return + } ctx, cancel := context.WithTimeout(r.Context(), 10*time.Minute) defer cancel() stacks, err := s.findStacks(ctx)