Red Hat Training

A Red Hat training course is available for Red Hat Container Development Kit

Chapter 3. Installing Docker Machine drivers

3.1. Overview

Minishift uses Docker Machine and its driver plugin architecture to provide a consistent way to manage the OpenShift VM. Minishift embeds VirtualBox and VMware Fusion drivers so no additional steps are required to use them.

However, other drivers require manual installation steps that are described in the following sections.

3.2. KVM driver

Minishift is currently tested against docker-machine-driver-kvm version 0.7.0.

Install and execute the KVM binary as follows:

~]$ sudo curl -L https://github.com/dhiltgen/docker-machine-kvm/releases/download/v0.7.0/docker-machine-driver-kvm -o /usr/local/bin/docker-machine-driver-kvm
~]$ sudo chmod +x /usr/local/bin/docker-machine-driver-kvm

For more information, see the GitHub documentation of the docker machine KVM driver.

3.3. On Red Hat Enterprise Linux

  1. Install libvirt and qemu-kvm on your system:
~]$ sudo yum install libvirt qemu-kvm
  1. Add yourself to the libvirt group so that you do not need to use sudo:
~]$ sudo usermod -a -G libvirt <username>
  1. Update your current session to apply the group change:
~]$ newgrp libvirt

3.4. xhyve driver

Minishift is currently tested against docker-machine-driver-xhyve.

3.5. Homebrew install

You can verify the installed version of the xhyve driver on your system before you install.

~]$ brew info --installed docker-machine-driver-xhyve
docker-machine-driver-xhyve: stable 0.3.1 (bottled), HEAD
Docker Machine driver for xhyve
https://github.com/zchee/docker-machine-driver-xhyve
/usr/local/Cellar/docker-machine-driver-xhyve/0.3.1 (3 files, 13.2M) *
  Poured from bottle on 2016-12-20 at 17:44:35
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/docker-machine-driver-xhyve.rb

To install the latest version of the driver with brew:

~]$ brew install docker-machine-driver-xhyve

# docker-machine-driver-xhyve need root owner and uid
~]$ sudo chown root:wheel $(brew --prefix)/opt/docker-machine-driver-xhyve/bin/docker-machine-driver-xhyve
~]$ sudo chmod u+s $(brew --prefix)/opt/docker-machine-driver-xhyve/bin/docker-machine-driver-xhyve

For more information, see the GitHub documentation for the xhyve driver.

3.5.1. Manual Installation

To manually install the xhyve driver, you need to download and install the docker-machine-driver-xhyve binary and place it in a directory which is on your PATH. /usr/local/bin is most likely a good choice, since it is the default installation directory for Docker Machine binaries.

The following steps explain the installation of the docker-machine-driver-xhyve binary to the /usr/local/bin/ directory:

  1. Download the docker-machine-driver-xhyve binary using:

    ~]$ sudo curl -L https://github.com/zchee/docker-machine-driver-xhyve/releases/download/v0.3.1/docker-machine-driver-xhyve -o /usr/local/bin/docker-machine-driver-xhyve
  2. Enable root access for the docker-machine-driver-xhyve binary and add it to the default wheel group:

    ~]$ sudo chown root:wheel /usr/local/bin/docker-machine-driver-xhyve
  3. Set owner User ID (SUID) for the binary as follows:

    ~]$ sudo chmod u+s /usr/local/bin/docker-machine-driver-xhyve
Note

The downloaded docker-machine-driver-xhyve binaries are compiled against a specific version of OS X. It is possible that the driver fails to work after an OS X version upgrade. In this case you can try to compile the driver from source:

~]$ go get -u -d github.com/zchee/docker-machine-driver-xhyve
~]$ cd $GOPATH/src/github.com/zchee/docker-machine-driver-xhyve

# Install docker-machine-driver-xhyve binary into /usr/local/bin
~]$ make install

# docker-machine-driver-xhyve need root owner and uid
~]$ sudo chown root:wheel /usr/local/bin/docker-machine-driver-xhyve
~]$ sudo chmod u+s /usr/local/bin/docker-machine-driver-xhyve

For more information, refer to the xhyve driver documentation on GitHub.