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

Docker构建镜像未包含gltf文件致AKS部署后404问题排查

问题分析与解决

你的核心问题是Docker构建镜像时,gltf模型文件没有被正确复制到发布目录,导致运行时触发404错误。IDE(Rider/Visual Studio)运行正常是因为开发环境会自动处理静态资源的复制逻辑,而dotnet publish需要明确配置才能识别并包含这类非标准静态文件。

解决步骤

1. 修改项目配置文件(.csproj)

打开TheResistanceOnline.Web.csproj,添加对gltf及关联文件的复制规则,确保dotnet publish执行时能把这些文件打包到发布目录:

<ItemGroup>
    <!-- 匹配assets目录下所有gltf模型文件 -->
    <Content Include="wwwroot/assets/**/*.gltf">
        <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </Content>
    <!-- 如果gltf包含对应的.bin二进制资源文件,需一并添加规则 -->
    <Content Include="wwwroot/assets/**/*.bin">
        <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </Content>
    <!-- 若项目中还有其他模型格式(如glb),可继续添加对应匹配规则 -->
</ItemGroup>

2. 验证Docker构建结果

重新构建镜像并运行后,可通过以下命令进入容器检查文件是否存在:

# 查看运行中的容器ID
docker ps
# 进入容器查看assets目录下的文件
docker exec -it <容器ID> ls /app/wwwroot/assets

如果能看到目标gltf文件,说明配置生效,访问时就不会出现404错误了。

3. 无需迁移到Azure Storage

当前问题完全是构建环节的文件复制配置遗漏,不需要将模型文件转移到Azure Storage Explorer,修复csproj配置即可解决问题。

内容的提问来源于stack exchange,提问作者shane-oo

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 20:57:19