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

更新Windows版Docker Desktop后docker compose up触发空指针引用错误

Docker Compose up --build 触发空指针panic的解决办法

问题场景

更新Windows版Docker Desktop后,执行docker compose up --build app命令刷新远程镜像时出现空指针错误,其他Compose命令可正常运行。使用的Docker Compose版本为v2.12.2。

错误日志

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0x187d8c6]

goroutine 12 [running]:
github.com/docker/compose/v2/pkg/compose.(*composeService).getDrivers(0xc000399f80, {0x20a2448, 0xc0005d8db0})
        github.com/docker/compose/v2/pkg/compose/build_buildkit.go:95 +0xc6
github.com/docker/compose/v2/pkg/compose.(*composeService).doBuildBuildkit(0xc000399f80, {0x20a2448, 0xc0005d8db0}, 0x0?, {0x1d918cd, 0x4})
        github.com/docker/compose/v2/pkg/compose/build_buildkit.go:47 +0x87
github.com/docker/compose/v2/pkg/compose.(*composeService).doBuild(0xc000399f80, {0x20a2448, 0xc0005d8db0}, 0xc0005a55e0?, 0xc0004b1ad0, {0x1d918cd, 0x4})
        github.com/docker/compose/v2/pkg/compose/build.go:228 +0xc5
github.com/docker/compose/v2/pkg/compose.(*composeService).ensureImagesExists(0x0?, {0x20a2448, 0xc0005d8db0}, 0xc0005a55e0, 0x0)
        github.com/docker/compose/v2/pkg/compose/build.go:134 +0x14d
github.com/docker/compose/v2/pkg/compose.(*composeService).create(0xc000399f80?, {0x20a2448, 0xc0005d8db0}, 0xc0005a55e0, {{0xc000178a80, 0x1, 0x2}, 0x0, 0x0, {0x1d97342, ...}, ...})
        github.com/docker/compose/v2/pkg/compose/create.go:67 +0x173
github.com/docker/compose/v2/pkg/compose.(*composeService).Up.func1({0x20a2448, 0xc0005d8db0})
        github.com/docker/compose/v2/pkg/compose/up.go:36 +0xaa
github.com/docker/compose/v2/pkg/progress.Run.func1({0x20a2448?, 0xc0005d8db0?})
        github.com/docker/compose/v2/pkg/progress/writer.go:61 +0x27
github.com/docker/compose/v2/pkg/progress.RunWithStatus.func2()
        github.com/docker/compose/v2/pkg/progress/writer.go:82 +0x87
golang.org/x/sync/errgroup.(*Group).Go.func1()
        golang.org/x/sync@v0.0.0-20220819030929-7fc1605a5dde/errgroup/errgroup.go:75 +0x64
created by golang.org/x/sync/errgroup.(*Group).Go
        golang.org/x/sync@v0.0.0-20220819030929-7fc1605a5dde/errgroup/errgroup.go:72 +0xa5

解决方法

  • 降级Compose版本:v2.12.2存在BuildKit相关的空指针bug,切换到v2.11.x稳定版即可解决。操作路径:Docker Desktop设置 -> Features in development -> Docker Compose version,选择旧版本后重启Docker。
  • 禁用BuildKit构建:临时绕过问题,执行命令前设置环境变量set DOCKER_BUILDKIT=0(Windows cmd)或$env:DOCKER_BUILDKIT=0(PowerShell),再运行docker compose up --build app;也可以在docker-compose.yml的build字段中添加x-use-buildkit: false。
  • 升级到最新稳定版:后续发布的Compose版本已修复该bug,直接在Docker Desktop中升级到最新版即可。
  • 重置Docker Desktop:如果是配置文件损坏导致的异常,可在Docker Desktop设置 -> Troubleshoot -> Reset to factory defaults,重置前注意备份重要镜像和容器。

内容的提问来源于stack exchange,提问作者dark

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 19:51:01