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

Docker容器中运行Vite开发服务器立即退出问题求助

解决方案

1. 修复核心问题:错误的package.json

你的package.json内容完全被替换成了vite.config.js的代码,这是npm run dev无法正常启动服务器的根本原因。必须恢复正确的package.json结构,示例如下:

{
  "name": "hiking-weather-frontend",
  "version": "0.0.0",
  "type": "module",
  "scripts": {
    "dev": "vite",
    "build": "vite build",
    "preview": "vite preview"
  },
  "dependencies": {
    "vue": "^3.3.4"
  },
  "devDependencies": {
    "@vitejs/plugin-vue": "^4.3.4",
    "vite": "^4.4.9"
  }
}

根据你的实际依赖调整版本号,确保scripts字段里的dev命令正确指向vite。

2. 优化Dockerfile(可选但推荐)

  • 无需全局安装vite,项目依赖中已包含该工具,全局安装属于冗余操作
  • 新增USER node配置,以非root用户运行容器,提升安全性
    修改后的Dockerfile:
FROM node:18-alpine
WORKDIR /usr/app

# 复制package文件并安装依赖
COPY package*.json ./
RUN npm install

# 复制项目代码
COPY . .

# 暴露端口
EXPOSE 8080

# 切换到非root用户
USER node

# 启动开发服务器(vite.config.js已配置host:0.0.0.0,无需额外传--host参数)
CMD ["npm", "run", "dev"]

3. 重新构建并运行容器

执行以下命令:

# 重新构建镜像
docker build -t hiking-weather-frontend .

# 运行容器(如需挂载本地代码实现热更新,添加-v参数)
docker run -p 8080:8080 -v $(pwd)/src:/usr/app/src hiking-weather-frontend

完成以上修改后,vite开发服务器即可在容器中正常启动,不会再出现立即退出的情况。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 06:15:41