You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS Code Dev Containers扩展打开Podman容器时出现段错误

问题:切换到Podman/Podman-Compose后VS Code Dev Containers连接容器失败

原本使用Docker/Docker-Compose可正常运行项目,切换为Podman/Podman-Compose后,使用VS Code的Dev Containers扩展打开容器时出现服务崩溃,核心错误日志如下:

[11115 ms] 
[11115 ms] Start: Starting VS Code Server
[11116 ms] Start: Preparing Extensions
[11116 ms] Start: Run in container: test ! -f '/root/.vscode-server/data/Machine/.installExtensionsMarker' && set -o noclobber && mkdir -p '/root/.vscode-server/data/Machine' && { > '/root/.vscode-server/data/Machine/.installExtensionsMarker' ; } 2> /dev/null
[11128 ms] 
[11129 ms] 
[11129 ms] Exit code 1
[11129 ms] Extensions cache, install extensions: None
[11129 ms] Start: Run in container: test -d /root/.vscode-server/extensionsCache && ls /root/.vscode-server/extensionsCache || true
[11140 ms] 
[11140 ms] 
[11140 ms] Start: Run in container: test -d /vscode/vscode-server/extensionsCache && ls /vscode/vscode-server/extensionsCache || true
[11149 ms] 
[11149 ms] 
[11149 ms] Extensions cache, link in container: None
[11149 ms] Optimizing extensions for quality: stable
[11149 ms] Start: Run in container: /root/.vscode-server/bin/6c3e3dba23e8fadc360aed75ce363ba185c49794/bin
*
* Visual Studio Code Server
*
* By using the software, you agree to
* the Visual Studio Code Server License Terms (https://aka.ms/vscode-server-license) and
* the Microsoft Privacy Statement (https://privacy.microsoft.com/en-US/privacystatement).
*
[12922 ms] Server bound to 127.0.0.1:33077 (IPv4)
Extension host agent listening on 33077

[14020 ms] Container server: Segmentation fault (core dumped)
[14064 ms] Error: unexpected end of parent stream
        at So.destroy (/Users/david.dsilva/.vscode/extensions/ms-vscode-remote.remote-containers-0.304.0/dist/extension/extension.js:24:106773)
        at So.write (/Users/david.dsilva/.vscode/extensions/ms-vscode-remote.remote-containers-0.304.0/dist/extension/extension.js:24:107514)
        at /Users/david.dsilva/.vscode/extensions/ms-vscode-remote.remote-containers-0.304.0/dist/extension/extension.js:24:109617
        at /Users/david.dsilva/.vscode/extensions/ms-vscode-remote.remote-containers-0.304.0/dist/extension/extension.js:24:95001
        at /Users/david.dsilva/.vscode/extensions/ms-vscode-remote.remote-containers-0.304.0/dist/extension/extension.js:24:97674
        at Object.cb (/Users/david.dsilva/.vscode/extensions/ms-vscode-remote.remote-containers-0.304.0/dist/extension/extension.js:24:104092)
        at c (/Users/david.dsilva/.vscode/extensions/ms-vscode-remote.remote-containers-0.304.0/dist/extension/extension.js:24:102318)
        at /Users/david.dsilva/.vscode/extensions/ms-vscode-remote.remote-containers-0.304.0/dist/extension/extension.js:24:102465
        at s (/Users/david.dsilva/.vscode/extensions/ms-vscode-remote.remote-containers-0.304.0/dist/extension/extension.js:27:5371)
        at Socket.<anonymous> (/Users/david.dsilva/.vscode/extensions/ms-vscode-remote.remote-containers-0.304.0/dist/extension/extension.js:27:5541)
        at Socket.emit (node:events:525:35)
        at endReadableNT (node:internal/streams/readable:1358:12)
        at process.processTicksAndRejections (node:internal/process/task_queues:83:21)
[14065 ms] Container server terminated (code: 139, signal: null).
[15381 ms] Start: Run in container: echo 33077 >'/root/.vscode-server/data/Machine/.devport-6c3e3dba23e8fadc360aed75ce363ba185c49794'
[15383 ms] userEnvProbe is taking longer than 2 seconds. Process not found.
[15399 ms] 
[15399 ms] 
[15400 ms] Start: Run in container: mkdir -p '/tmp/devcontainers-1b89834a-fb03-4bf3-ae06-650fb90e26e91692287263792' && cat > '/tmp/devcontainers-1b89834a-fb03-4bf3-ae06-650fb90e26e91692287263792/env-loginInteractiveShell.json' << 'envJSON'
[15400 ms] Port forwarding for container port 33077 starts listening on local port.
[15400 ms] Port forwarding local port 33077 to container port 33077
[15401 ms] Start: Run: /Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin) --ms-enable-electron-run-as-node /Users/david.dsilva/.vscode/extensions/ms-vscode-remote.remote-containers-0.304.0/dist/spec-node/devContainersSpecCLI.js run-user-commands --user-data-folder /Users/david.dsilva/Library/Application Support/Code/User/globalStorage/ms-vscode-remote.remote-containers/data --docker-path podman --docker-compose-path podman-compose --container-session-data-folder /tmp/devcontainers-1b89834a-fb03-4bf3-ae06-650fb90e26e91692287263792 --workspace-folder /Users/david.dsilva/gitprojects/tenzing --id-label devcontainer.local_folder=/Users/david.dsilva/gitprojects/tenzing --container-id bf03ac3cc33d13c6fcc88486049f00f21910a2bacfbc0842c62f71a0880b8a40 --log-level debug --log-format json --config /Users/david.dsilva/gitprojects/tenzing/.devcontainer/devcontainer.json --default-user-env-probe loginInteractiveShell --skip-non-blocking-commands false --prebuild false --stop-for-personalization true --remote-env REMOTE_CONTAINERS_IPC=/tmp/vscode-remote-containers-ipc-4a3b608b-6e6c-401b-ae7b-85bc74c3e421.sock --remote-env SSH_AUTH_SOCK=/tmp/vscode-ssh-auth-4a3b608b-6e6c-401b-ae7b-85bc74c3e421.sock --remote-env REMOTE_CONTAINERS=true --mount-workspace-git-root true --terminal-columns 205 --terminal-rows 22 --dotfiles-target-path ~/dotfiles
[15478 ms] 
[15479 ms] 
[15484 ms] Port forwarding connection from 51128 > 33077 > 33077 in the container.
[15484 ms] Start: Run in container: /root/.vscode-server/bin/6c3e3dba23e8fadc360aed75ce363ba185c49794/node -e 
[15537 ms] @devcontainers/cli 0.50.0. Node.js v16.17.1. darwin 22.1.0 arm64.

解决思路

  • 升级组件版本:将Podman升级到最新稳定版,同时更新VS Code及Dev Containers扩展,确保arm64架构下的兼容性。
  • 重建VS Code Server:删除容器内的/root/.vscode-server目录,让Dev Containers重新下载适配容器架构的二进制文件;检查容器基础镜像是否为arm64版本,避免跨架构模拟导致的段错误。
  • 调整Dev Containers配置:在devcontainer.json中添加"overrideCommand": false,防止容器启动命令被修改;明确指定"remoteUser": "root"或使用非root用户,排查权限冲突。
  • 检查Podman网络:在compose.yml中指定网络模式为bridge,或启用Dev Containers的端口转发调试日志,验证端口映射是否正常。
  • 清理缓存:执行podman system prune -a清理Podman容器、镜像及缓存;删除本地VS Code的Dev Containers缓存目录~/Library/Application Support/Code/User/globalStorage/ms-vscode-remote.remote-containers/data,重建容器。
  • 手动验证VS Code Server:通过podman exec进入容器,手动运行/root/.vscode-server/bin/<commit-id>/bin,查看是否能正常启动,定位容器内环境问题。

内容的提问来源于stack exchange,提问作者David D'Silva

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 18:48:10