As alluded to here and here , it turns out this is a WSL issue. If you’re launching docker from wsl, but working in a windows directory, file edits aren’t propagated to the container properly, and the watch will not trigger. I solved the issue by moving my project directory inside of wsl, and running my containers from there.