Describe the Bug
When using a docker path that is not the default “docker”, operations will fail with misleading errors becuase devContainersSpecCLI.js is not supplied with the --docker-path parameter.
Steps to Reproduce
Repro using cursor
- Install podman desktop on windows.
- configure @ext:anysphere.remote-containers → Docker Path as “podman”
- attempt to launch a dev container using an existing devcontainer.json config
- Observe that the operation fails and the error reports that the config file could not be read.
2025-06-19 02:00:20.367 [info] [read-configuration][stderr]: [2025-06-19T07:00:20.366Z] @devcontainers/cli 0.75.0. Node.js v20.19.0. win32 10.0.19045 x64. 2025-06-19 02:00:20.583 [error] Failed to read devcontainer config [read-configuration] Command failed with exit code 1: stdout:
If we tamper with devContainersSpecCLI.js to force the log-level to trace, we get to see that the actual reason the “read-configuration” operation failed was that we attempted a “docker ps”, which does not work since we need to use podman
[read-configuration][stderr]: [2025-06-19T06:13:51.027Z] Start: Run: docker ps -q -a --filter label=devcontainer.
Repro by Invoking devContainersSpecCLI directly without docker-path
We can further reproduce this by invoking devContainersSpecCLI.js directly
Observe that the trace output reports that it execute and failed “docker ps”
# Set env for node execution PS C:\Users\ajith> $Env:ELECTRON_RUN_AS_NODE=1PS C:\Users\ajith> C:\Users\ajith\AppData\Local\Programs\cursor\Cursor.exe ` >> 'c:\Users\ajith\.cursor\extensions\anysphere.remote-containers-1.0.7\dist\@devcontainers\cli\dist\spec-node\devContainersSpecCLI.js' ` >> 'read-configuration' ` >> --workspace-folder 'c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ' ` >> --config 'c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ\.devcontainer\devcontainer.json' ` >> --log-level trace PS C:\Users\ajith> [2025-06-19T07:20:12.530Z] @devcontainers/cli 0.75.0. Node.js v20.19.0. win32 10.0.19045 x64. [2025-06-19T07:20:12.530Z] Start: Run: docker ps -q -a --filter label=devcontainer.local_folder=c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ --filter label=devcontainer.config_file=c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ\.devcontainer\devcontainer.json [2025-06-19T07:20:12.723Z] Stop (193 ms): Run: docker ps -q -a --filter label=devcontainer.local_folder=c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ --filter label=devcontainer.config_file=c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ\.devcontainer\devcontainer.json [2025-06-19T07:20:12.723Z] Command failed: docker ps -q -a --filter label=devcontainer.local_folder=c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ --filter label=devcontainer.config_file=c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ\.devcontainer\devcontainer.jsonCorrect behavior with the --docker-path as “podman”
PS C:\Users\ajith> C:\Users\ajith\AppData\Local\Programs\cursor\Cursor.exe ` >> 'c:\Users\ajith\.cursor\extensions\anysphere.remote-containers-1.0.7\dist\@devcontainers\cli\dist\spec-node\devContainersSpecCLI.js' ` >> 'read-configuration' ` >> --workspace-folder 'c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ' ` >> --config 'c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ\.devcontainer\devcontainer.json' ` >> --log-level trace ` >> --docker-path podman PS C:\Users\ajith> [2025-06-19T07:17:02.163Z] @devcontainers/cli 0.75.0. Node.js v20.19.0. win32 10.0.19045 x64. [2025-06-19T07:17:02.163Z] Start: Run: podman ps -q -a --filter label=devcontainer.local_folder=c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ --filter label=devcontainer.config_file=c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ\.devcontainer\devcontainer.json [2025-06-19T07:17:02.629Z] Stop (466 ms): Run: podman ps -q -a --filter label=devcontainer.local_folder=c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ --filter label=devcontainer.config_file=c:\cygwin64\work\2025-06-18-cursorai-demo\cursor-ai-workspaces\PQ\.devcontainer\devcontainer.json [2025-06-19T07:17:02.630Z] Start: Run: podman inspect --type container 7745fcdca7b7 [2025-06-19T07:17:03.134Z] Stop (504 ms): Run: podman inspect --type container 7745fcdca7b7 {"configuration":{"name":"PQ \\\\<REDACTED### Expected Behavior Dev container is started and there is no errors about not being able to read the config file ### Operating System Windows 10/11 ### Current Cursor Version (Menu -> About Cursor -> Copy) Version: 1.1.3 (user setup) VSCode Version: 1.96.2 Commit: 979ba33804ac150108481c14e0b5cb970bda3260 Date: 2025-06-15T06:55:04.603Z Electron: 34.5.1 Chromium: 132.0.6834.210 Node.js: 20.19.0 V8: 13.2.152.41-electron.0 OS: Windows_NT x64 10.0.19045 ### Additional Information This formerly worked with the Microsoft Dev containers extension, but that is no longer available, and only the anysphere version appears in the marketplace. I hacked up the extension js files to substitute "podman" as the default dockerCLI path, and it worked. ### Does this stop you from using Cursor Sometimes - I can sometimes use Cursor