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

Docker部署React+Django至Ubuntu EC2:React报Vite未找到错误

解决React+Django容器化部署的"vite not found"错误

问题根源

你在docker-compose.yml的frontend服务中挂载了本地的node_modules目录到容器内的/frontend/node_modules,这会直接覆盖Docker构建阶段通过npm install安装的所有依赖。如果本地环境的node_modules没有包含vite(或依赖版本不兼容),容器就会出现找不到vite的错误——而你本地运行正常,是因为本地已经正确安装了vite。

解决步骤

  1. 修改docker-compose配置
    打开你的docker-compose.yml,找到frontend服务的volumes配置,删除挂载node_modules的那一行:

    volumes:
      - ./frontend_react/secure-pass-keeper/src:/frontend/src  
      - ./frontend_react/secure-pass-keeper/public:/frontend/public  
      # 删掉下面这行
      # - ./frontend_react/secure-pass-keeper/node_modules:/frontend/node_modules
    
  2. 清理旧容器并重新构建
    执行以下命令彻底清理旧容器、卷,然后重新构建启动服务:

    docker-compose down -v && docker-compose up --build
    
  3. 可选:本地开发热重载兼容
    如果你需要保留src和public的挂载以实现热重载,确保本地前端目录已经执行过npm install安装依赖,但不要挂载容器的node_modules——容器会使用自身构建阶段安装的依赖,避免本地和容器依赖冲突。

额外排查点

  • 检查前端项目的package.json,确认vite已经被添加到devDependencies中
  • 确保Dockerfile中的npm install没有使用--production参数(该参数会跳过安装dev依赖,而vite通常是dev依赖)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 03:14:58