forever: Error: watch ENOSPC on 0.15 (running inside Docker)

I can no longer use forever inside Docker container after updating to 0.15. I have plenty of space left, not sure why I’m getting ENOSPC.

Rolling back to 0.14.2 works.

Jul 29 14:23:34 coreos docker[12137]: events.js:85
Jul 29 14:23:34 coreos docker[12137]: throw er; // Unhandled 'error' event
Jul 29 14:23:34 coreos docker[12137]: ^
Jul 29 14:23:34 coreos docker[12137]: Error: watch ENOSPC
Jul 29 14:23:34 coreos docker[12137]: at exports._errnoException (util.js:746:11)
Jul 29 14:23:34 coreos docker[12137]: at FSWatcher.start (fs.js:1172:11)
Jul 29 14:23:34 coreos docker[12137]: at Object.fs.watch (fs.js:1198:11)
Jul 29 14:23:34 coreos docker[12137]: at createFsWatchInstance (/usr/src/app/node_modules/forever/node_modules/forever-monitor/node_modules/chokidar/lib/nodefs-handler.js:37:15)
Jul 29 14:23:34 coreos docker[12137]: at setFsWatchListener (/usr/src/app/node_modules/forever/node_modules/forever-monitor/node_modules/chokidar/lib/nodefs-handler.js:80:15)
Jul 29 14:23:34 coreos docker[12137]: at EventEmitter.NodeFsHandler._watchWithNodeFs (/usr/src/app/node_modules/forever/node_modules/forever-monitor/node_modules/chokidar/lib/nodefs-handler.js:228:14)
Jul 29 14:23:34 coreos docker[12137]: at EventEmitter.NodeFsHandler._handleFile (/usr/src/app/node_modules/forever/node_modules/forever-monitor/node_modules/chokidar/lib/nodefs-handler.js:255:21)
Jul 29 14:23:34 coreos docker[12137]: at EventEmitter.<anonymous> (/usr/src/app/node_modules/forever/node_modules/forever-monitor/node_modules/chokidar/lib/nodefs-handler.js:468:21)
Jul 29 14:23:34 coreos docker[12137]: at FSReqWrap.oncomplete (fs.js:95:15)

About this issue

  • Original URL
  • State: open
  • Created 9 years ago
  • Reactions: 2
  • Comments: 17 (4 by maintainers)

Most upvoted comments

Has anyone here tried upping the number of inotify watchers? You have to do it inside of the host, and then the docker container will have the same number. You can’t modify this value from inside the docker container for security reasons AFAIK.

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

In https://github.com/facebook/jest/issues/3254 @maraisr did some research for another problem.

There’s also a great post here if you want to know how to see your current inotify watcher value, and see how many are being used at any given time.

https://unix.stackexchange.com/questions/13751/kernel-inotify-watch-limit-reached