I did use them several years ago, for Clojure and ClojureScript development. Docker and docker-compose were my main tools, with syncthing helping synchronize source code in real time, Emacs as the editor. Everything worked quite well, but was never as easy and smooth as just running everything locally.