2.0.6 • Published 7 years ago

inotify-proxy v2.0.6

Weekly downloads
22
License
MIT
Repository
-
Last release
7 years ago

inotify-proxy

A utility to help with development within Docker containers on Windows and OSX.

Containers run on Windows or OSX through docker-machine or boot2docker are running within a VirtualBox virtual machine. Files can be shared between the host operating system and the container through shared volumes. This allows the developer to continue to use their editor of choice while building and running their code inside the container.

Unfortunately, VirtualBox does not trigger inotify events within the container when a file is modified on the host system. This issue is described here:

Workflows that rely on inotify events to trigger build processes are limited by this issue.

inotify-proxy is a small utility to restore these build processes. It polls for filechanges, then touches those files again inside the container, triggering the necessary inotify events.

Usage

inotify-proxy must be run inside a container. It will monitor all files and descendents of the directory it is run from. It has been packaged as a NPM module.

Within the Docker container, install:

npm install --save-dev inotify-proxy --no-bin-links

And, add this entry to your package.json:

{
  "scripts": {
    "watch": "./node_modules/inotify-proxy/bin/inotify-proxy"
  }
}

Then, run this command:

npm run watch

Once running, inotify-proxy will initially list all of the files it is monitoring. When one of those files changes the name of the changed file will be displayed. Any build processes running in that container and listening for changes on that file will be triggered.

Ignores files in the ./node_modules directory. You can specify additional directories and files to exclude, via inotify-proxy's arguments.

inotify-proxy [ignored-file-or-directory...]

To reduce the overhead of polling for changes, polling is only run once per second.

2.0.6

7 years ago

2.0.5

7 years ago

2.0.4

7 years ago

2.0.3

7 years ago

2.0.2

7 years ago

2.0.1

7 years ago

2.0.0

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.0.0

7 years ago