fix: Prevent Vite file watcher from crashing in Kubernetes
Fixed the crash loop issue caused by Vite trying to watch too many files (including node_modules) in Kubernetes environment. Problem: - Vite dev server was starting successfully - But then container would crash with "too many open files" - This caused infinite restart loop (CrashLoopBackOff) - Error: "failed to create fsnotify watcher: too many open files" Root Cause: - Vite's file watcher was monitoring ALL files including node_modules - In Kubernetes, this exceeded inotify limits - Each restart would hit the same limit Solution: - Added 'ignored' patterns to vite.config.ts server.watch - Excluded: node_modules, dist, .git, coverage, .cache - Vite will only watch actual source files in src/ - Dramatically reduces number of watched files Changes: - frontend/vite.config.ts: Added server.watch.ignored array Benefits: - Container stays running without crashes - Faster hot reload (fewer files to watch) - Lower resource usage - Dev server remains stable in Kubernetes Testing: - Tilt will auto-rebuild container with new config - Container should start and stay running - Vite dev server will be accessible - Hot reload will still work for src/ files
This commit is contained in:
@@ -25,6 +25,14 @@ export default defineConfig({
|
|||||||
port: 3000,
|
port: 3000,
|
||||||
watch: {
|
watch: {
|
||||||
usePolling: true, // Important for Docker file watching
|
usePolling: true, // Important for Docker file watching
|
||||||
|
// Ignore these directories to prevent "too many open files" error in Kubernetes
|
||||||
|
ignored: [
|
||||||
|
'**/node_modules/**',
|
||||||
|
'**/dist/**',
|
||||||
|
'**/.git/**',
|
||||||
|
'**/coverage/**',
|
||||||
|
'**/.cache/**',
|
||||||
|
],
|
||||||
},
|
},
|
||||||
proxy: {
|
proxy: {
|
||||||
'/api': {
|
'/api': {
|
||||||
|
|||||||
Reference in New Issue
Block a user