采用Buildpacks构建Loans应用Docker镜像失败求助
解决方案
问题分析
构建失败的核心原因是Docker Desktop的WSL 2集成配置异常,导致Spring Boot Maven插件无法正确连接Docker服务;同时pom.xml中配置了只读参数pullPolicy,引发警告。
步骤1:修复WSL 2发行版配置
Docker Desktop提示未检测到WSL 2发行版,按以下步骤处理:
- 以管理员身份打开PowerShell,执行命令安装默认WSL 2发行版(如Ubuntu):
若需指定发行版,可运行:wsl --installwsl --install -d Ubuntu - 设置WSL默认版本为2:
wsl --set-default-version 2 - 重启Docker Desktop,进入「设置->资源->WSL集成」,确认已识别到安装的发行版,并开启对应集成开关。
步骤2:修正pom.xml配置
移除spring-boot-maven-plugin中的<pullPolicy>IF_NOT_PRESENT</pullPolicy>配置(该参数为只读,不能在plugin配置中定义)。若需设置镜像拉取策略,在构建时添加Maven参数:
mvn spring-boot:build-image -Dspring-boot.build-image.pullPolicy=IF_NOT_PRESENT
步骤3:验证Docker连接与构建
- 确保Docker Desktop处于运行状态,在命令行执行
docker info测试连接是否正常。 - 优先在WSL环境的终端中运行Maven构建命令(而非Windows命令行),避免跨环境路径解析问题:
# 进入WSL终端(如Ubuntu),切换到项目目录 cd /mnt/c/Kartik_Workspace/DockerProject/loans mvn clean spring-boot:build-image
内容的提问来源于stack exchange,提问作者Kartik M
相关产品推荐
相关产品推荐

