How to install Windows 10 on DigitalOcean?

For whatever reason, DigitalOcean chooses not to offer it’s users the ability to run Windows on it’s virtual cloud platform. Many people, myself included, wish to run Windows in the Cloud, and find DigitalOcean’s services to be competitively priced, but until now, this was thought to be impossible.

Thanks to good people at WhatUpTime.com, this is now possible! The system image we will be using is provided by them, however they require payment for obtaining the image, so I choose to share the system image for free here. Please note, it’s not legal to charge people for a Windows image, so what they’re doing might not be legal. The included image has no license key and requires your own key to be activated, or else it will only work for 60 days as a trial. Note, it is Windows 10 Enterprise build 14393.

*Excuse the low quality of the images, I saved them in the wrong format and it was too late before I noticed. *

First of all, you will need to create a new droplet. Choose all the default options, the operating system doesn’t matter, but please do not enable Backups or User Data/Cloud Init!

After creating the droplet, click on the left side and choose recovery as is shown in the image below:

Step 1

After choosing Recovery, on the new page select Boot from Recovery ISO.

Step 2

You will get a confirmation message:

Step 3

Click the Off button on the droplet panel above, and confirm that you wish to turn it off.

Step 4

Step 5

The droplet will now be in the Off state:

Step 6

Now turn it back on, by clicking the Off button and it will become On, to indicate the droplet is turned on, but now in recovery mode.

Step 7

Now we need to access the recovery console. On the left, click Access, then in the new screen click Access Console.

Step 8

A new popup will open. If it’s black only with no text, click in it and press any key.

Step 9

Press number 1, then press enter.

Note the password that was automatically generated and open any SSH client (I use Kitty in this example)..

Connect to the IP of your server with the username root and the password that was automatically generated (without spaces, lowercase!).

Now, if you’re in the recovery console, press number 6 and then enter to activate a shell.

Enter the following command:

wget -O- https://projects.milankragujevic.com/win10-digitalocean/10.ENT.x64.EVAL.US-English_2.gz | gunzip | dd of=/dev/vda

Step 10

Wait for it to complete, it will take a few minutes. Don’t worry if the speed drops, it will be done relatively quickly, but please do not interrupt the SSH connection!

In my case it was done in about 7 minutes.

When it’s done, it’ll look like this:

Step 11

Now, you need to close the SSH session by closing the Kitty window, then go to the DigitalOcean panel, and go to the Recovery page, then select “Boot from Hard Drive”.

Step 12

Turn the droplet off, then turn it back on…

Now, go to Access and again enter Console Access. Make sure any previous consoles are closed.

Step 13

In the newly opened window, you should see the familiar Windows 10 lock screen:

Step 14

Press Enter to log in.

The following credentials are the default:

Username: WhatUpTime.com
Password: P@ssword64

If it doesn’t work, make sure your PC’s keyboard is set to English (US) for the @ to work (enter it with Shift + 2).

Step 15

After entering the system, network will not work.

Right click inside the Access Console on the network icon in the taskbar and select “Open Network and Sharing Center”.

Step 16

Choose Change adapter settings on the left, then right click on Ethernet adapter and choose Properties. From there, select “Internet Protocol Version 4 (TCP/IPv4)” and then Properties.

Step 17

In the newly opened window, select “Use the following IP address”, and enter the IP address, Default gateway and Subnet mask that you see in the Console window below the picture of the system. You will also have to enter the DNS servers, in this case I used 1.1.1.1 and 1.0.0.1 which are CloudFlare’s DNS servers.

Step 18

Now you can close the Console and connect from your PC to the remote server using Microsoft Terminal Services Client (Win+R and then type mstsc).

Login with the same credentials to the IP of your server.

Congrats! You’re done!

DON’T FORGET TO REMOVE THE DEFAULT ACCOUNT AND ADD YOUR OWN WITH A STRONG PASSWORD!*

If you encounter any issues, please comment below and I’ll try to help you.