{"record":{"id":"ec6d973b74ff9ce1","repo":"abiosoft/colima","slug":"error-getting-qcow-image-w","errorCode":null,"errorMessage":"error getting qcow image: %w","messagePattern":"error getting qcow image: %w","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"environment/vm/lima/disk.go","lineNumber":184,"sourceCode":"\t\t\t}\n\t\t}\n\n\t\timage.Location = conf.DiskImage\n\t\tl.limaConf.Images = []limaconfig.File{image}\n\t\treturn nil\n\t}\n\n\t// use a previously cached image\n\tif image, ok := limautil.ImageCached(l.limaConf.Arch, conf.Runtime, conf.DiskImageMirror); ok {\n\t\tl.limaConf.Images = []limaconfig.File{image}\n\t\treturn nil\n\t}\n\n\t// download image\n\tlog.Infoln(\"downloading disk image ...\")\n\timage, err := limautil.DownloadImage(l.limaConf.Arch, conf.Runtime, conf.DiskImageMirror)\n\tif err != nil {\n\t\treturn fmt.Errorf(\"error getting qcow image: %w\", err)\n\t}\n\n\tl.limaConf.Images = []limaconfig.File{image}\n\treturn nil\n}\n\nfunc (l *limaVM) setDiskImage() error {\n\tvar c limaconfig.Config\n\tb, err := os.ReadFile(config.CurrentProfile().LimaFile())\n\tif err != nil {\n\t\treturn err\n\t}\n\tif err := yaml.Unmarshal(b, &c); err != nil {\n\t\treturn err\n\t}\n\n\tl.limaConf.Images = c.Images\n\treturn nil","sourceCodeStart":166,"sourceCodeEnd":202,"githubUrl":"https://github.com/abiosoft/colima/blob/c3a5f9184d83a197184f897a9f07eb3c01b3bc88/environment/vm/lima/disk.go#L166-L202","documentation":"When neither a user-specified disk image nor a cached one is available, Colima downloads the qcow2 disk image via limautil.DownloadImage(arch, runtime, mirror). This error wraps any failure of that download: HTTP errors, unreachable hosts, interrupted transfers, or mirror failures. It only occurs on first start of a profile (or after clearing the image cache).","triggerScenarios":"First `colima start` on a machine with no cached image; corporate proxy or firewall blocking GitHub/Cloudflare release URLs; DNS failure; a flaky mirror passed via the disk-image-mirror setting; interrupted download that could not resume.","commonSituations":"Fresh CI runners with restricted egress; users behind VPNs/proxies (HTTPS_PROXY not set for the Colima process); cloud regions with slow routes to the default mirror.","solutions":["Check network/proxy: ensure HTTPS_PROXY/HTTP_PROXY are set in the environment where colima runs, and that the image host is reachable (curl the mirror URL).","Retry the start; a transient network failure often clears. Note the image caches under the Lima/Colima home, so progress is not fully lost.","Configure an alternate `disk-image-mirror` in the config pointing at a reachable mirror, then start again.","For air-gapped hosts, download the correct qcow2 on a connected machine and pass it via `colima start --disk-image <file>` (with matching digest)."],"exampleFix":"# before\ncolima start   # download fails: proxy blocks github releases\n\n# after\nexport HTTPS_PROXY=http://proxy.corp:3128\ncolima start","handlingStrategy":"retry","validationCode":"// pre-flight the image host / mirror before first start\nif err := probeURL(mirrorOrOfficialURL); err != nil { log.Fatalf(\"image host unreachable: %v\", err) }","typeGuard":null,"tryCatchPattern":"Go: retry start with backoff when err wraps the image download; on persistent failure, fall back to pre-seeding the image cache or --disk-image from an offline copy.","preventionTips":["Set HTTPS_PROXY/HTTP_PROXY in colima's environment","Configure a reachable disk-image-mirror","Pre-download the qcow2 and use --disk-image on restricted networks"],"tags":["network","download","disk-image","colima","proxy","mirror"],"backgroundTag":null,"analyzedSha":"c3a5f9184d83a197184f897a9f07eb3c01b3bc88","analyzedAt":"2026-08-15T18:58:08.334Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}