abiosoft/colima · info
%s is not running
Error message
%s is not running
What it means
colima's status pipeline (getStatus) returns this when the guest VM is not running; the profile display name is included. It represents a normal steady-state answer (VM down), phrased as an error because Status() propagates it to the caller/CLI.
Source
Thrown at app/app.go:372
Driver string `json:"driver"`
Arch string `json:"arch"`
Runtime string `json:"runtime"`
MountType string `json:"mount_type"`
IPAddress string `json:"ip_address,omitempty"`
DockerSocket string `json:"docker_socket,omitempty"`
ContainerdSocket string `json:"containerd_socket,omitempty"`
BuildkitdSocket string `json:"buildkitd_socket,omitempty"`
IncusSocket string `json:"incus_socket,omitempty"`
Kubernetes bool `json:"kubernetes"`
CPU int `json:"cpu"`
Memory int64 `json:"memory"`
Disk int64 `json:"disk"`
}
func (c colimaApp) getStatus() (status statusInfo, err error) {
ctx := context.Background()
if !c.guest.Running(ctx) {
return status, fmt.Errorf("%s is not running", config.CurrentProfile().DisplayName)
}
currentRuntime, err := c.currentRuntime(ctx)
if err != nil {
return status, err
}
status.DisplayName = config.CurrentProfile().DisplayName
status.Driver = "QEMU"
conf, _ := configmanager.LoadInstance()
if !conf.Empty() {
status.Driver = conf.DriverLabel()
}
status.Arch = string(c.guest.Arch())
status.Runtime = currentRuntime
status.MountType = conf.MountType
ipAddress := limautil.IPAddress(config.CurrentProfile().ID)
if ipAddress != "127.0.0.1" {View on GitHub (pinned to c3a5f9184d)
Solutions
- Start the VM if it should be up: `colima start`
- Treat this exact message as the 'stopped' answer in monitoring rather than a failure
- Use `colima list` to see all profiles' states at once
- Automate startup at login (brew services, launchd, or a shell hook)
Example fix
# monitoring treats stopped as a state, not an alert colima status 2>&1 | grep -q 'is not running' && echo 'stopped' || echo 'running'
Defensive patterns
Strategy: validation
Validate before calling
// readiness probe that treats 'not running' as a state, not a failure
out, err := exec.Command("colima", "status").CombinedOutput()
stopped := err != nil && strings.Contains(string(out), "not running")
if stopped {
// start it, or report 'stopped' and exit cleanly
} Type guard
func isVMNotRunning(err error) bool {
return err != nil && strings.Contains(err.Error(), "is not running")
} Try / catch
if err := a.Status(false, true); err != nil {
if isVMNotRunning(err) {
// normal state: VM down -> start it or report 'stopped' without failing the pipeline
}
return err
} Prevention
- Autostart colima after reboot if scripts depend on it
- Model 'stopped' explicitly in monitoring instead of treating non-zero exit as an alert
- Use `colima list` for multi-profile state checks
When it happens
Trigger: `colima status` (plain or --json) while the VM is stopped, or any caller invoking App.Status/getStatus before `colima start`.
Common situations: Status checks right after boot/login before starting colima; CI probes using colima status as a readiness gate; checks after a host reboot.
Related errors
- %s not running
- dependency check failed for VM: %w
- error starting vm: %w
- error starting %s: %w
- error running %s provision script(s)
AI-assisted analysis of abiosoft/colima@c3a5f9184d (2026-08-15).
Data as JSON: /api/errors/883eb18964e8b9d9.
Report an issue: GitHub.