Docker

通常,vite-plugin-ssr 应用只是一个 Node.js 服务器,因此我们可以使用任何 Node.js Docker 容器。

Build

如果我们在 Docker 中构建我们的应用程序,我们可能会发现内存不足的错误

如果我们这样做,我们需要检查 Docker 容器是否有足够的内存,可能还需要设置 Node.js 的 --max-old-space-size

// package.json
{
  "scripts": {
    "// We use Node.js' environment variable `NODE_OPTIONS` to increase memory size to 3GB": "",
    "build": "NODE_OPTIONS=--max-old-space-size=3072 npm run build:run",
    "build:run": "vite build"
  }
}

另请参考:

Dev

如果我们也想使用 Docker 进行开发,则需要为 Vite 的 HMR 端口配置 Docker

如果我们使用带有 WSL 的 Windows,我们需要配置 chokidar 以使用轮询。 (Vite 使用 chokidar。)

// package.json
{
  "scripts": {
    "dev": "CHOKIDAR_USEPOLLING=true npm run server"
  }
}

请注意,据报告 vite.config.js#server.watch.usePolling 不生效

另请参考: