
Ask HN: How Did You Setup Your Windows Machine to Do Linux Related Development? - Hex08
Some people (including myself) want or need to run Windows as their main OS, but I&#x27;m a strong believer that some things just work best or are easier on Linux: docker, databases, web servers, etc...<p>I&#x27;m in the process of revamping my setup to improve my &quot;linux on windows&quot; experience and I&#x27;m not yet completely satisfied with any of the setups I&#x27;ve tried which include:<p>- running a vm on vmware: it works alright and it&#x27;s the one I&#x27;ve used so far. it&#x27;s not a seamless integration though, you have to spin up the vm each time you need it. also unity mode has been discontinued<p>- running a vm on hyperv: Ubuntu Desktop runs awfully bad in terms of graphics, I&#x27;m now currently trying out Ubuntu Server and I&#x27;m planning to use it via ssh. I&#x27;ll see how that goes<p>- WSL: is very early stages IMO, most of the things might work but I&#x27;ve noticed daemons generally don&#x27;t work. I&#x27;ve tried docker and postgres and they both don&#x27;t work. I need Docker really bad. Some people found a fix for this but docker-compose is still not working. WSL looks like the worst choice so far.<p>So I was just curious to know if there&#x27;s someone out there that is doing this kind of linux-on-windows integration and how they set-up their environment.
======
mihaifm
VMWare is probably the better option if you're limited to a single machine.
Performance is not amazing, especially if you're not running on an SSD, but
still way better that Oracle VirtualBox for example.

WSL can't be used for serious development at the moment, it's only an useful
playground.

Ultimately a dedicated machine is far better, I bought an Intel NUC for this
purpose, it doesn't take too much space on my desk and I can hook it up to the
same monitor as the Windows machine. Raspberry Pi is also an alternative,
depending on your performance needs.

~~~
Hex08
I never though about using a separate machine, definitely going to take a look
at it!

------
jim-wxl28azo8
How about Docker Desktop for Windows? Uses hyperv behind the scenes (which
means you must have Win 10 Pro or other versions with hyperv) but includes
docker engine & kubernetes. Defaults to Linux container development but can be
switched to Windows containers if you need.

~~~
jim-wxl28azo8
[https://hub.docker.com/editions/community/docker-ce-
desktop-...](https://hub.docker.com/editions/community/docker-ce-desktop-
windows)

(Full disclosure: I work for Docker)

~~~
fxfan
Great answer!

I suppose one has to pay the regular virtualization penalties though?

------
RNeff
I was developing Java code to run on windows, but disliked the different IDEs.
I learned Unix / vi / bash in the late 1980's; vi is in my fingertips. I use
cygwin [https://www.cygwin.com/](https://www.cygwin.com/) which gives me the
unix utilities running on windows. This is probably not what you were looking
for.

------
cygned
I have a Fedora server running in the basement. I can access it using SSH from
both internal network and external (dynamic DNS and SAH tunneling).

Allows me to work from my Windows desktop, my MacBook and even on my iPad,
wherever I am.

------
wprapido
What about remote machines with DigitalOcean, Vultr, ScaleWay, AWS?

------
juststeve
An alternative: Use a dedicated Linux machine as your main OS, and then run
windows on a separate device when you need it.

~~~
godot
If you go this route, you could also just dual boot on the same machine. No
need to buy separate hardware :)

------
fxfan
Why do you need docker and I wonder if github.com/rolisoft/wsl-distribution-
switcher would be help to you?

