Here we will show you how to set up a Linux Virtual Machine on your Windows 10 computer, with our preconfigured Docker container.

Setting Up Windows Subsystem for Linux 2

Search -> powershell -> Run as Administrator
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart wsl --set-default-version 2
Download and install latest Linux installation package from here:

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

Restart machine.

Installing Docker

Download Desktop Docker Installer from here:

https://docs.docker.com/docker-for-windows/install/

Install with default options checked.
Close out and restart machine.

Windows -> Search -> powershell
docker run --rm hello-world
Ignore the message, just make sure it works.

Create A Container

Get your NCS auth token from this page:

https://cloud.neocortix.com/profile/api

Substitute your NCS auth token in YOUR_AUTH_TOKEN in the command below, and run it:

Windows -> Search -> powershell
docker run -it --name ncs --hostname ncs -e NCS_AUTH_TOKEN=YOUR_AUTH_TOKEN -v $HOME/ncs:/root/ncs neocortix/ncs
Generate the SSH key by typing the following command:
ssh-keygen -t rsa -N "" -f ~/.ssh/id_rsa
Exit the container by running
exit
All the steps above need to be done just once, to set everything up.

Launch The Container

Windows -> Search -> PowerShell
docker start -i ncs
This command will launch your Linux Virtual Machine. You will use this command anytime you want to re-launch it.
In that container, you download and run the installNcs.sh script as usual. You will see there the "ncs" folder, located in the home directory. This is mapping to your host machine. Its content is a content of "ncs" folder, located on your host machine, in your home directory (on Windows, this is
C:\Users\<username>
, on Mac it's
/Users/<username>
, on Linux it's
/home/<username>
). Use this folder for sending data from the host machine to the container and back.
That's it! Now you have a Linux Virtual Machine that you can use for all of the Neocortix tutorials and examples.