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

启用Nginx反向代理时Docker COPY文件丢失,Blazor WASM部署异常

Blazor WASM部署Docker容器异常排查

我正在学习Docker,尝试将Blazor WASM应用发布到Docker容器中,遇到了以下异常情况:

相关配置文件

docker-compose.yml

version: '3.7'

services:
  reverseproxy:
    build:
      context: .
      dockerfile: nginx/nginx.Dockerfile
    ports:
      - "44395:44395"
    networks:
      testnet

  test.ui:
    build:
      context: .
      dockerfile: Web/Dockerfile
    depends_on:
      - reverseproxy
    environment:
      - ASPNETCORE_URLS=http://*:5005
      - ASPNETCORE_ENVIRONMENT=Development
    ports:
      - "5005:5005"
    networks:
      - testnet

networks:
  testnet: {}

Nginx Dockerfile(路径:nginx/nginx.Dockerfile)

FROM nginx

COPY nginx/nginx.local.conf /etc/nginx/nginx.conf

初始Blazor WASM Dockerfile(路径:Web/Dockerfile)

FROM mcr.microsoft.com/dotnet/sdk:7.0-alpine AS publish
RUN apk add nodejs
RUN apk add npm
WORKDIR /src
COPY . .
WORKDIR "/src/Web"
RUN npm install
RUN dotnet publish "Web.csproj" -c Release -o /output

FROM nginx:alpine
WORKDIR /usr/share/nginx/html
COPY --from=publish /output/wwwroot .

初始配置下,文件未正确复制到目标目录。

更新后的Blazor WASM Dockerfile

FROM mcr.microsoft.com/dotnet/sdk:7.0-alpine AS build-env
RUN apk add nodejs
RUN apk add npm
WORKDIR /app
COPY . ./                                         # 此处修改
WORKDIR "/app/Web"
RUN npm install
RUN dotnet publish -c Release -o output

FROM nginx:alpine
WORKDIR /usr/share/nginx/html
COPY --from=build-env /app/Web/output/wwwroot/ .  # 此处修改

问题现象

  • 单独运行更新后的Dockerfile时,/app/Web/output/wwwroot/下的内容可正常复制到/usr/share/nginx/html,编译构建流程无异常。
  • 通过docker-compose运行时,reverseproxy服务正常持续运行,但test.ui容器出现异常:进入容器后发现/usr/share/nginx目录不存在,执行命令报错如下:
C:\Users\xxxx>docker exec -it 18aa171dae9d sh
/app/Web # cd ..
/app # cd ..
/ # cd usr
/usr # cd share
/usr/share # cd nginx
sh: cd: can't cd to nginx: No such file or directory
/usr/share #
  • 注释docker-compose.yml中的reverseproxy服务后,test.ui的文件复制恢复正常;重新启用reverseproxy服务则目录丢失,且构建日志显示publish步骤完成后直接开始导出镜像,未执行COPY操作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 21:24:58