To avoid unnecessary risks, following Vagrant recommendations, I preferred to temporarily disable Hyper-V if you had enabled it, and forget about the battles of the hypervisors:
PS > Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
2.Installing Windows Subsystem for Linux (WSL)
This topic is pretty easy, only had to go to the Microsoft Store on Windows 10, and look for Ubuntu App.
If you face any issue or want to know more info about this process, have a look at this link: https://msdn.microsoft.com/en-us/commandline/wsl/install_guide
Just download it from VirtualBox site and install it as usually
Easier than expected this time; one code liner:
$ sudo apt install vagrant
Verifying Vagrant installation:
$ vagrant --version
5. Finishing last settings
5.1 Environmental variables
This is absolutely necessary to avoid errors, you can add it to .bashrc if you prefers
$ export VAGRANT_WSL_ENABLE_WINDOWS_ACCESS="1"
5.2 Creating Vagrantfile
Vagrantfile has to contain one line to avoid error related to Stderr, so including here how to download first image or box example to adjust related
# Add new box $ vagrant box add ubuntu/bionic64 # Make project folder and modifying Vagranfile $ mkdir vagrant $ cd vagrant $ vagrant init ubuntu/bionic64
5.3 Setting Vagrantfile
As VirtualBox installed is Windows based, it’s necessary to share a folder for using by vagrant (WSL) and VirtualBox (Windows).
In my case, I made
c:\vagrant, so I moved
Vagrantfile to this folder once created and modified it accordingly:
$ cp Vagrantfile /mnt/c/vagrant $ cd /mnt/c/vagrant
Following lines were modified/added:
config.vm.synced_folder "../data", /mnt/c/vagrant"
config.vm.provider "virtualbox" do |vb| vb.customize [ "modifyvm", :id, "--uartmode1", "disconnected" ] end
6. Running the box
Last and not least, this line to finish all good job done
$ vagrant up