abiosoft/colima · warning

error stopping %s: %w

Error message

error stopping %s: %w

What it means

While stopping, a container runtime's graceful Stop failed; the code comments state explicitly that this is not fatal because the VM shuts down anyway and takes the runtimes with it. The warning names the runtime whose graceful shutdown failed.

Source

Thrown at app/app.go:204

	// stop container runtimes only if the guest is responsive
	if c.guest.Running(ctx) && c.guestResponsive() {
		containers, err := c.currentContainerEnvironments(ctx)
		if err != nil {
			log.Warnln(fmt.Errorf("error retrieving runtimes: %w", err))
		}

		// stop happens in reverse of start
		for i := len(containers) - 1; i >= 0; i-- {
			cont := containers[i]

			log := log.WithField("context", cont.Name())
			log.Println("stopping ...")

			if err := cont.Stop(ctx, force); err != nil {
				// failure to stop a container runtime is not fatal
				// it is only meant for graceful shutdown.
				// the VM will shut down anyways.
				log.Warnln(fmt.Errorf("error stopping %s: %w", cont.Name(), err))
			}
		}
	} else if c.guest.Running(ctx) {
		log.Warnln("vm not responsive, skipping runtime shutdown")
	}

	// stop vm
	// no need to check running status, it may be in a state that requires stopping.
	if err := c.guest.Stop(ctx, force); err != nil {
		return fmt.Errorf("error stopping vm: %w", err)
	}

	log.Println("done")

	if err := generateSSHConfig(false); err != nil {
		log.Trace("error generating ssh_config: %w", err)
	}
	return nil

View on GitHub (pinned to c3a5f9184d)

Solutions

  1. Treat as best-effort: the VM stop that follows still terminates everything
  2. If stop hangs or the VM is unresponsive, use `colima stop --force`
  3. Check runtime health after the next start (docker version against the colima context)
  4. If failures recur, recreate the instance to reset guest state
Defensive patterns

Strategy: fallback

Try / catch

// warning-level: the VM stop still happens; only force-stop if the overall stop fails
if err := a.Stop(false); err != nil {
    return a.Stop(true) // force
}

Prevention

When it happens

Trigger: `colima stop` where docker/containerd inside the guest ignores or errors on the shutdown request: daemon already dead, guest under memory pressure, runtime socket unresponsive.

Common situations: Stopping while a heavy image pull is in flight; guest starved of memory so the daemon cannot respond; daemon crashed earlier in the session.

Related errors


AI-assisted analysis of abiosoft/colima@c3a5f9184d (2026-08-15). Data as JSON: /api/errors/8d894977f63bb548. Report an issue: GitHub.