User Guide

  • 04/24/2019
  • Public Content

Install Docker on a Linux Host

Developing embedded Linux IoT applications with Intel System Studio on Linux using the Docker toolchain is
most thoroughly tested
for the
Ubuntu 16.04 Desktop platform
. Other Linux desktop distributions will work with the Intel System Studio IoT application development toolchain, but only instructions for Ubuntu 16.04 Desktop are provided here.
For a complete list of Linux platforms supported by Intel System Studio, see Intel System Studio 2019 System Requirements.

Prerequisites

Before installing Docker onto your system, make sure the following prerequisites have been met:
  • Docker for Linux
    requires
    64-bit Linux and kernel version 3.10.0 or later
    1
    (Docker recommends you use the latest kernel available). Additional Docker CE for Linux requirements can be found in the online Docker documentation.
  • Docker
    requires
    that your development system's CPU include support for the full range of hardware virtualization available in most modern mobile, desktop, and server CPUs. On an Intel processor, this means your CPU supports
    VT-x
    ,
    VT-d,
    and
    VT-x with EPT
    (all three virtualization features must be supported). You can determine if your Intel CPU supports these features by visiting ark.intel.com and searching for the processor in your development system. On AMD* processors, the necessary virtualization features are known generally as
    AMD-V
    .
  • Some systems disable the CPU virtualization features in the BIOS, which prevents the OS from detecting and making use of virtualization features. The process used to enable virtualization in a BIOS varies widely, as does the name of the feature(s) in the BIOS setup menus.
    Virtualization Technology (VT) should be enabled by default in most recent system BIOSes
    .

Determine if virtualization is enabled on your Ubuntu system

  1. Install the "cpu-checker" package and test your system's virtualization status using the "kvm-ok" utility:
    $ sudo -E apt-get install cpu-checker
  2. If virtualization is enabled, you should see the following when executing the "kvm-ok" command:
    $ sudo kvm-ok INFO: /dev/kvm exists KVM acceleration can be used
  3. If virtualization is disabled (or your CPU does not support virtualization), the "kvm-ok" command will respond as follows:
    $ sudo kvm-ok INFO: Your CPU does not support KVM extensions DVM acceleration can NOT be used
  4. If the "kvm-ok" command fails, check the virtualization capabilities of your system's processor and confirm that virtualization has been enabled in your system's BIOS.

Enable virtualization if it has been disabled in your BIOS

If virtualization has been disabled in your system's BIOS, try using the steps below to locate and enable VT in your system BIOS:
  1. Reboot your system.
  2. During reboot, enter your system's BIOS setup by pressing the 'Esc', 'F1', 'F2', 'Del', or 'Enter' key. The precise key needed to enter the BIOS setup will depend on your system's make (manufacturer) and model. Pay close attention to any on-screen instructions provided during power-on for hints regarding how to enter the BIOS setup. You may also find help at your system manufacturer's support web site.
  3. Look for an option labeled 'Virtualization', 'Virtualization Technology', or 'Intel® Virtualization Technology', which is usually located under 'CPU Configurations', 'CPU Setup', 'System Configurations', 'Advanced', or a 'Security' tab.
  4. Check to see if the VT option is enabled or disabled. If VT is disabled in the BIOS, enable it.
  5. Save the BIOS settings and reboot your system by pressing the 'F10' key.
NOTE
: The "save and reboot" key may vary depending on your system's make and model.
You can verify the Linux kernel version required by Docker for Linux in the Docker documentation

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804