fix: enable Chokidar polling for Vite HMR in Docker on Windows

Native fs events do not propagate from Windows hosts into Linux
containers, causing Vite's HMR to stop detecting file changes.

When the DOCKER environment variable is set, Chokidar now falls back
to polling with a 300ms interval, which reliably detects changes
across the Docker volume mount boundary.

Fixes #2456
This commit is contained in:
Mustafa Senoglu committed 2026-06-26 18:02:42 +03:00
1 parent 71387917ec
commit bb2a8caddc
2 files changed
+7

No files matched your search

+1
View File
@@ -7,6 +7,7 @@ services:
- VITE_API_HOST=http://localhost:7091
- VITE_API_STREAMING=$VITE_API_STREAMING
- VITE_EMBEDDINGS_NAME=$EMBEDDINGS_NAME
- DOCKER=true
ports:
- "5173:5173"
+6
View File
@@ -22,6 +22,12 @@ export default defineConfig(({ mode }) => {
.map((h) => h.trim())
.filter(Boolean)
: [],
// Use polling for file watching when running inside Docker.
// Native fs events do not propagate from Windows hosts into Linux
// containers, so Chokidar falls back to polling which works reliably.
watch: env.DOCKER
? { usePolling: true, interval: 300 }
: undefined,
},
test: {
environment: 'happy-dom',