We have two stacks, a traditional LAMP environment, and just implemented a NODE/Docker environment. Have migrated over to Linux after a long time away from it, numerous Kernel Panics in the past, in the early days, sort of put us off, just too unstable (bare in mind this was some fifteen years ago hahaha, how time flies), saying that right now is a great time to migrate (if you are running Windows and simply want to work then jump ship to Linux, best thing we have done in years). One thing Linux is really great for is development, and all things networking related, be it web servers, database servers, any server… Everything runs so smooth, yes some configuration required but as all of our hosting is *nix based we are very familiar with this side. Its incredibly stable, scales superbly, all our tools work from Wappler to Workbench, Filezilla, Visual Studio Code, Android Studio, etc. To have GREP back in my life is amazing, missed it so much! Little things really… Simple things, and things that work! So that is our local environment covered. Everything is backed up via RSYNC and a little tool called Timeshift (for backups), all Projects are on USB drives, as are the backups, and syncing to our S3 spaces. Easy to SSH in to this box if I am away, and work as normal just like am in the office, yes you can do it with Windows but much more native on Linux! Can’t praise it enough right now, and why the hell I stayed with Windows so long I don’t know, but am now cursing myself for all the lost time!
We standardised all PHP Projects to run 7.3, all MySQL run 5.7 but working on migrating to 8.0, Node and Docker run the most recent stable releases respectively. Everything just works. So unifying the environment is the important thing, what we run remotely is exactly what we run locally, version for version, the best tip I can give really, in this regard. Again just makes everything simple, and uniform, across the board… Easy to maintain, very familiar to us, and just works. No more to say really.