abiosoft/colima · error

runtime cannot be updated, %s is not running

Error message

runtime cannot be updated, %s is not running

What it means

Returned by colimaApp.Update (app/app.go:598) when c.guest.Running(ctx) is false. Updating the in-VM container runtime requires the VM to be up, so colima refuses with the profile's display name instead of attempting a doomed update.

Source

Thrown at app/app.go:598

	return env, nil
}

func (c colimaApp) Runtime() (string, error) {
	return c.currentRuntime(context.Background())
}

func (c colimaApp) Kubernetes() (environment.Container, error) {
	return c.containerEnvironment(kubernetes.Name)
}

func (c colimaApp) Active() bool {
	return c.guest.Running(context.Background())
}

func (c *colimaApp) Update() error {
	ctx := context.Background()
	if !c.guest.Running(ctx) {
		return fmt.Errorf("runtime cannot be updated, %s is not running", config.CurrentProfile().DisplayName)
	}

	runtime, err := c.currentRuntime(ctx)
	if err != nil {
		return err
	}

	container, err := c.containerEnvironment(runtime)
	if err != nil {
		return err
	}

	oldVersion := container.Version(ctx)

	updated, err := container.Update(ctx)
	if err != nil {
		return err
	}

View on GitHub (pinned to c3a5f9184d)

Solutions

  1. Start the profile first: `colima start -p <profile>`, then rerun `colima update -p <profile>`
  2. List profiles with `colima list` and confirm you are targeting the running one with `-p`
  3. If `colima start` itself fails, fix that first (logs under ~/.colima/_lima/<profile>) before updating

Example fix

# before
colima update -p myprofile   # runtime cannot be updated, 'myprofile' is not running

# after
colima start -p myprofile && colima update -p myprofile
Defensive patterns

Strategy: validation

Validate before calling

// Ensure the VM is up before updating
if !app.Active() {
    if err := startCmd(); err != nil { // colima start -p <profile>
        return fmt.Errorf("cannot start profile for update: %w", err)
    }
}
return app.Update()

Try / catch

if err := app.Update(); err != nil {
    if strings.Contains(err.Error(), "is not running") {
        // precondition failure: start the profile and retry once
    }
    return err
}

Prevention

When it happens

Trigger: Calling app.Update() (the `colima update` command) while the profile's Lima VM is stopped, was created but never started, or belongs to a different profile than the one selected (wrong -p flag).

Common situations: Running `colima update` after a host reboot where the VM is not auto-started; using the default profile when the intended runtime lives in another profile; VM stopped by `colima stop` and forgotten.

Related errors


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