Resolving Oracle Virtualbox conflicts with Docker and Hyper-V on Windows 10

Installing Ubuntu via Virtualbox on Windows 10 with Docker running failed

Last Updated on August 27, 2020 by Christopher G Mendla

When trying to update a virtual machine running Ubuntu 18 on a Windows 10 machine I kept running into failures. I thought I’d just go to a fresh install of Ubuntu 20.04 and rebuild my Ruby on Rails development environment. That also failed. I found that the culprit that Docker was running on Windows 10 and there are conflicts between Hyper-V and Virtualbox. 

Background

A couple of years back, I set up Oracle Virtualbox in order to have a Rails development environment running Ubuntu. The installation of Virtualbox and Ubuntu 18 was straightforward.

I used that setup to work on a number of projects. A little over two years ago, I took a full time job which left little or no time for sideline rails projects. The Virtualbox/Ubuntu setup gathered dust.

This July I my position fell victim to funding issues related to the Covid shutdowns. As I was repositioning myself for a job search, I wanted to use my personal development environment. As I started try to update Ubuntu 18, I ran into issues. I finally got it to where I could try the upgrade to Ubuntu 20.04. That almost worked but seemed unstable.

My next thought was to create a new virtual machine and then rebuild my development environment. I wasn’t happy about losing my previous customization but decided to try that. That ended up failing as well. 

Inspiration

I remembered that I had done some preliminary experimentation with Docker under Windows 10. After some quick research, I found that there can be conflicts with Oracle Virtualbox and running Hyper-V for Docker.

Resolution

I turned off Hyper-V and removed Docker. After that, creating a Ubuntu 20.04 virtual machine under Virtualbox worked.

Alternatives

I had a couple of alternatives.

  • Switch to Docker for a Development Environment – I decided against this as I have potential side jobs and my portfolio site that I wanted to work on as quickly as possible. 
  • Use WSL2 (Windows Subsystem for Linux) – There are posts about running Virtualbox and Docker on the same Windows system using WSL2. – I decided against this as it seemed it might require some time to get it working smoothly. 
  • Remove Docker and disable Hyper-V – This posed the least tech risk for me so I went this route. 

Summary

I lost a couple of hours by not realizing there was a conflict between Virtualbox and Hyper-V. By doing a fresh install of Ubuntu I had to completely rebuild my development environment.

On the other hand, I made mistakes with installing software on my previous VM. With a fresh install, I have a much cleaner installation.

I now have a stable Ruby on Rails development environment. However, at some point in the near future, I would like to revisit installing Docker.

Leave a Reply

Your email address will not be published. Required fields are marked *