Software Requirements : Oracle VirtualBox
One of the biggest problems developers face while working offline is - working across machines. At times like this - when we all have to work from home during the COVID-19 pandemic, it has been quite a hassle for all developers to backup their local machine projects and set them up back again on their machines. Also the next major issue you might face is - your desktop was Linux host and your laptop is windows. Setting up an exact same server on windows to work like it was working before. And whose to forget the problems with the database backup from one machine and set it up all over on the other one. Also using different versions of the same distro might pose some more issues.
So, Yes - There’s a very simple and easy way out of this - Just use Virtual Machines(VM).
You can use virtual machines as your host machine to set up your projects. This has a huge list of benefits.
You can carry your host anywhere you want. Just export the VM to a flash drive and you are good to go. Then just open the exported VM on any target machine having VirtualBox installed (Be it windows / linux / mac ). You will have all your settings / databases / setup projects as you would like them to be.
If you are now changing your working project and someone else is continuing forward with your work - just export the VM and the other person has saved a lot of time setting up the project / required softwares on his machine. Also if you do have the option to share your host machine with others on your network to work with them simultaneously or not to share at all.
If you are experimenting with different configurations (sometimes might break your installation) - just create a snapshot of your current VM and experiment all you want. If anything goes wrong - just revert to the snapshot you’ve just created and you are all up again!
Over time - using your host machine for working accumulates a lot of unnecessary data and information, which is probably useless. Using a VM can help you keep your local machine running at peak performance all the time (no need to format your pc and deal with backups and restores).
Using a VM gives you the freedom to choose any OS you want as your host. You can work on a windows / linux / mac seamlessly and even simultaneously without losing any of your work related stuff.
Take a look at this nice article on how you can import and export VMs in VirtualBox.
Here you can find a list of VirtualBox images to download