Windows 10 Pro

This section describes how to install, start, stop, and upgrade Driverless AI on a Windows 10 Pro machine. The installation steps assume that you have a license key for Driverless AI. For information on how to obtain a license key for Driverless AI, visit https://www.h2o.ai/driverless-ai-download/. Once obtained, you will be promted to paste the license key into the Driverless AI UI when you first log in, or you can save it as a .sig file and place it in the license folder that you will create during the installation process.

Overview of Installation on Windows

The recommended way of installing Driverless AI on Windows is via WSL Ubuntu. Running a Driverless AI Docker image on Windows is also possible but not preferred.

Note: GPU support is not available on Windows.

Caution: This should be used only for experimental purposes and only on small data. For serious use, please use Linux.

Environment

Operating System GPU Support? Min Mem Suitable for
Windows 10 Pro No 16 GB Experimentation

DEB Installs

This section describes how to install the Driverlss AI DEB on Windows 10 using Windows Subsystem for Linux (WSL).

Requirements

Installation Procedure

(Note that systemd is not supported for Linux on Windows.)

Run the following commands to install and run the Driverless AI DEB. Replace <VERSION> with your specific version.

# Install prerequisites.
sudo apt-get update
sudo apt-get install execstack

# Install Driverless AI.  Expect installation of the .deb file to take several minutes on WSL.
sudo dpkg -i dai_VERSION.deb
sudo execstack -c /opt/h2oai/dai/python/lib/libcrypto.so.1.0.0

# Run Driverless AI.
sudo -H -u dai /opt/h2oai/dai/run-dai.sh

Upgrading the DEB

WARNING: Experiments, MLIs, and MOJOs are not automatically upgraded when Driverless AI is upgraded.

  • Build MLI models before upgrading.
  • Build MOJO pipelines before upgrading.

If you did not build MLI on a model before upgrading Driverless AI, then you will not be able to view MLI on that model after upgrading. Before upgrading, be sure to run MLI jobs on models that you want to continue to interpret in future releases. If that MLI job appears in the list of Interpreted Models in your current version, then it will be retained after upgrading.

If you did not build a MOJO pipeline on a model before upgrading Driverless AI, then you will not be able to build a MOJO pipeline on that model after upgrading. Before upgrading, be sure to build MOJO pipelines on all desired models.

Run the following commands to upgrade and restart Driverless AI.

# Stop Driverless AI.
sudo pkill -U dai

# The processes should now be stopped.  Verify.
sudo ps -u dai

# If desired, back up your /opt/h2oai/dai/tmp directory at this time.

# Upgrade and restart.
sudo dpkg -i dai_NEWVERSION.deb
sudo execstack -c /opt/h2oai/dai/python/lib/libcrypto.so.1.0.0
sudo -H -u dai /opt/h2oai/dai/run-dai.sh

Docker Image Installs

Notes:

  • Installing the Driverless AI Docker image on Windows is not the recommended method for running Driverless AI. RPM and DEB installs are preferred.
  • Be aware that there are known issues with Docker for Windows. More information is available here: https://github.com/docker/for-win/issues/188.

Watch the installation video here. Note that some of the images in this video may change between releases, but the installation steps remain the same.

Requirements

  • Windows 10 Pro

Installation Procedure

  1. Retrieve the Driverless AI package from https://www.h2o.ai/driverless-ai-download/.
  2. Download, install, and run Docker for Windows from https://docs.docker.com/docker-for-windows/install/. You can verify that Docker is running by typing docker version in a terminal (such as Windows PowerShell). Note that you may have to reboot after installation.
  3. Before running Driverless AI, you must:
  • Enable shared access to the C drive. Driverless AI will not be able to see your local data if this is not set.
  • Adjust the amount of memory given to Docker to be at least 10 GB. Driverless AI won’t run at all with less than 10 GB of memory.
  • Optionally adjust the number of CPUs given to Docker.

You can adjust these settings by clicking on the Docker whale in your taskbar (look for hidden tasks, if necessary), then selecting Settings > Shared Drive and Settings > Advanced as shown in the following screenshots. Don’t forget to Apply the changes after setting the desired memory value. (Docker will restart.) Note that if you cannot make changes, stop Docker and then start Docker again by right clicking on the Docker icon on your desktop and selecting Run as Administrator.

../_images/windows_docker_menu_bar.png ../_images/windows_shared_drive_access.png ../_images/windows_docker_advanced_preferences.png
  1. Open a PowerShell terminal and set up a directory for the version of Driverless AI on the host machine, replacing VERSION below with your Driverless AI Docker image version (for example, 1.1.3):
C:\User>md dai_rel_VERSION
  1. With Docker running, navigate to the location of your downloaded Driverless AI image. Move the downloaded Driverless AI image to your new directory.
  2. Change directories to the new directory, then load the image using the following command, replacing VERSION below with your Driverless AI Docker image version (for example, 1.1.3):
C:\User>cd dai_rel_VERSION
C:\User\dai_rel_VERSION>docker load -i .\driverless-ai-docker-runtime-rel-VERSION.gz
  1. Tag the Driverless AI version with latest. For example, the command below tags driverless-ai-docker-cuda9-runtime-rel-1.1.3.cuda9.gz as latest. Why do I have to tag this as latest? Refer to the FAQ.
C:\User\dai_rel_VERSION>docker tag opsh2oai/h2oai-runtime:1.1.3.cuda9 opsh2oai/h2oai-runtime:latest
  1. Set up the data, log, license, and tmp directories (within the new directory).
C:\User\dai_rel_VERSION>md data
C:\User\dai_rel_VERSION>md log
C:\User\dai_rel_VERSION>md license
C:\User\dai_rel_VERSION>md tmp
  1. Copy data into the /data directory. The data will be visible inside the Docker container at /data.
  2. Start the Driverless AI Docker image. Be sure to replace path_to_ below with the entire path to the location of the folders that you created (for example, “c:/Users/user-name/driverlessai_folder/data”). Note that this is regular Docker, not NVIDIA Docker. GPU support will not be available.
C:\User\dai_rel_dai_rel_VERSION>docker run --pid=host --init --rm -p 12345:12345 -p 54321:54321  -p 9090:9090 -v c:/path_to_data:/data -v c:/path_to_log:/log -v c:/path_to_license:/license -v c:/path_to_tmp:/tmp opsh2oai/h2oai-runtime
  1. Connect to Driverless AI with your browser at http://localhost:12345.

Stopping the Docker Image

To stop the Driverless AI Docker image, type Ctrl + C in the Terminal (Mac OS X) or PowerShell (Windows 10) window that is running the Driverless AI Docker image.

Upgrading the Docker Image

This section provides instructions for upgrading Driverless AI so that existing experiments are saved. The instructions show an example of upgrading Driverless AI from version 1.0.18 to version 1.1.3.

WARNING: Experiments, MLIs, and MOJOs are not automatically upgraded when Driverless AI is upgraded.

  • Build MLI models before upgrading.
  • Build MOJO pipelines before upgrading.

If you did not build MLI on a model before upgrading Driverless AI, then you will not be able to view MLI on that model after upgrading. Before upgrading, be sure to run MLI jobs on models that you want to continue to interpret in future releases. If that MLI job appears in the list of Interpreted Models in your current version, then it will be retained after upgrading.

If you did not build a MOJO pipeline on a model before upgrading Driverless AI, then you will not be able to build a MOJO pipeline on that model after upgrading. Before upgrading, be sure to build MOJO pipelines on all desired models.

Note: Stop Driverless AI if it is still running.

  1. SSH into the IP address of the machine that is running Driverless AI.
  2. Set up a directory for the version of Driverless AI on the host machine:
# Set up directory with the version name
mkdir dai_rel_1.1.3

# cd into the new directory
cd dai_rel_1.1.3
  1. Retrieve the Driverless AI package from https://www.h2o.ai/driverless-ai-download/ and add it to the new directory.

Note: You can optionally run the following to retrive the latest tagged version. In this case, you will not know the actual Driverless AI version until you start the software.

# Download latest release
wget https://s3-us-west-2.amazonaws.com/h2o-internal-release/docker/driverless-ai-docker-runtime-latest-release.gz
  1. Tag the Driverless AI version with latest. For example, the command below tags driverless-ai-docker-cuda9-runtime-rel-1.1.3.cuda9.gz as latest. Why do I have to tag this as latest? Refer to the FAQ. (Note: If you downloaded driverless-ai-docker-runtime-latest-release.gz, then you do not need to perform this step. That version is already tagged as latest.)
docker tag opsh2oai/h2oai-runtime:1.1.3.cuda9 opsh2oai/h2oai-runtime:latest
  1. Load the Driverless AI Docker image inside the new directory:
# Load the Driverless AI docker image
docker load < driverless-ai-docker-runtime-rel-VERSION.gz
  1. Copy the data, log, license, and tmp directories from the previous Driverless AI directory to the new Driverless AI directory:
# Copy the data, log, license, and tmp directories on the host machine
cp -r dai_rel_1.0.18/data dai_rel_1.1.3/data
cp -r dai_rel_1.0.18/log dai_rel_1.1.3/log
cp -r dai_rel_1.0.18/license dai_rel_1.1.3/license
cp -r dai_rel_1.0.18/tmp dai_rel_1.1.3/tmp

At this point, your experiments from the previous versions will be visible inside the Docker container.

  1. Start the Driverless AI Docker image.
  2. Connect to Driverless AI with your browser at http://Your-Driverless-AI-Host-Machine:12345.