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

React TypeScript Vite项目Docker化遇问题:入口解析错误与404异常

解决React TypeScript Vite应用Docker化后的404问题

问题根源分析

你的Dockerfile路径拷贝逻辑存在问题,加上多余的main字段干扰了Vite的入口解析,导致出现404错误。


1. 移除package.json中多余的main字段

Vite项目以index.html作为入口,不需要Node.js的main字段,直接删除你添加的"main": "src/main.tsx"配置,避免干扰Vite的入口识别逻辑。

2. 修正Dockerfile的拷贝路径

假设你的本地项目结构是:

本地项目根目录/
├─ sv_ui_v1/
│  ├─ package.json
│  ├─ index.html
│  ├─ src/
│  └─ vite.config.ts
└─ Dockerfile

原Dockerfile中先单独拷贝sv_ui_v1/package.json,再拷贝整个根目录,会导致项目结构混乱,Vite无法找到正确的入口文件。修正后的Dockerfile如下:

FROM node:20 AS dev

WORKDIR /app

# 优先拷贝依赖配置文件,利用Docker缓存
COPY sv_ui_v1/package.json ./
COPY sv_ui_v1/package-lock.json* ./

RUN npm install

# 拷贝整个sv_ui_v1目录的项目文件
COPY sv_ui_v1/ .

EXPOSE 5173

CMD ["npm", "run", "dev"]

3. 额外检查项

  • 确认sv_ui_v1目录下的index.html中,script标签正确指向入口文件:
    <script type="module" src="/src/main.tsx"></script>
    
  • 启动容器时必须做端口映射,执行命令:docker run -p 5173:5173 你的镜像名称

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 02:33:20