From e2f96cf4b865d51e05e2f1c11c1be894bdbf8f6e Mon Sep 17 00:00:00 2001 From: Misty Stanley-Jones Date: Tue, 12 Dec 2017 17:02:27 -0800 Subject: [PATCH] Document storage driver limitations for Ubuntu and RHEL --- engine/installation/linux/docker-ce/ubuntu.md | 29 ++++++++++--- engine/installation/linux/docker-ee/rhel.md | 20 ++++++--- engine/installation/linux/docker-ee/ubuntu.md | 43 +++++++++++++++++-- 3 files changed, 77 insertions(+), 15 deletions(-) diff --git a/engine/installation/linux/docker-ce/ubuntu.md b/engine/installation/linux/docker-ce/ubuntu.md index 2e8b306ba4..23d7ce8885 100644 --- a/engine/installation/linux/docker-ce/ubuntu.md +++ b/engine/installation/linux/docker-ce/ubuntu.md @@ -53,20 +53,34 @@ It's OK if `apt-get` reports that none of these packages are installed. The contents of `/var/lib/docker/`, including images, containers, volumes, and networks, are preserved. The Docker CE package is now called `docker-ce`. -### If you need to use aufs +### Supported storage drivers -Docker CE now uses the `overlay2` storage driver by default, and it is -recommended that you use it instead of `aufs`. If you need to use `aufs`, you -will need to do additional preparation. +Docker EE on Ubuntu supports `overlay2` and `aufs` storage drivers. -#### Xenial 16.04 and newer +- For new installations on version 4 and higher of the Linux kernel, `overlay2` + is supported and preferred over `aufs`. +- For version 3 of the Linux kernel, `aufs` is supported because `overlay` or + `overlay2` drivers are not supported by that kernel version. + +If you need to use `aufs`, you will need to do additional preparation as +outlined below. + +#### Extra steps for aufs + + +
+
For Ubuntu 16.04 and higher, the Linux kernel includes support for OverlayFS, and Docker CE will use the `overlay2` storage driver by default. If you need to use `aufs` instead, you need to configure it manually. See [aufs](/engine/userguide/storagedriver/aufs-driver.md) -#### Trusty 14.04 +
+
Unless you have a strong reason not to, install the `linux-image-extra-*` packages, which allow Docker to use the `aufs` storage @@ -80,6 +94,9 @@ $ sudo apt-get install \ linux-image-extra-virtual ``` +
+
+ ## Install Docker CE You can install Docker CE in different ways, depending on your needs: diff --git a/engine/installation/linux/docker-ee/rhel.md b/engine/installation/linux/docker-ee/rhel.md index 00cc7c7167..0ab2ed925e 100644 --- a/engine/installation/linux/docker-ee/rhel.md +++ b/engine/installation/linux/docker-ee/rhel.md @@ -30,11 +30,21 @@ Docker Community Edition (Docker CE) is not supported on {{ linux-dist-long }}. To install Docker EE, you need the 64-bit version of {{ linux-dist-long }} running on `x86_64`, `s390x` (IBM Z), or `ppc64le` (IBM Power) architectures. -In addition, you must use the `overlay2` or `devicemapper` storage driver. -**The `overlay2` storage driver is only supported on RHEL 7.2 or higher.** On -production systems using `devicemapper`, you must use `direct-lvm` mode, which -requires one or more dedicated block devices. Fast storage such as solid-state -media (SSD) is recommended. +In addition, you must use the `overlay2` or `devicemapper` storage driver. The +`overlay2` driver is preferred for ease of configuration, if you are able to +use it. The following limitations apply: + +**OverlayFS**: + +- The `overlay2` storage driver is only supported on RHEL 7.2 or higher. +- If `selinux` is enabled, the `overlay2` storage driver is only supported on + RHEL 7.4 or higher. + +**Devicemapper**: + +- On production systems using `devicemapper`, you must use `direct-lvm` mode, + which requires one or more dedicated block devices. Fast storage such as + solid-state media (SSD) is recommended. {% capture selinux-warning %} > **Warning**: There is currently no support for `selinux` on IBM Z systems. If diff --git a/engine/installation/linux/docker-ee/ubuntu.md b/engine/installation/linux/docker-ee/ubuntu.md index 82aabcebc3..1ac1fc937f 100644 --- a/engine/installation/linux/docker-ee/ubuntu.md +++ b/engine/installation/linux/docker-ee/ubuntu.md @@ -47,6 +47,11 @@ Docker EE is supported on `x86_64` (or `amd64`), `s390x` (IBM Z), and `ppc64el` Docker EE on Ubuntu supports `overlay2` and `aufs` storage drivers. +- For new installations on version 4 and higher of the Linux kernel, `overlay2` + is supported and preferred over `aufs`. +- For version 3 of the Linux kernel, `aufs` is supported because `overlay` or + `overlay2` drivers are not supported by that kernel version. + ### Uninstall old versions Older versions of Docker were called `docker` or `docker-engine`. In addition, @@ -61,11 +66,38 @@ It's OK if `apt-get` reports that none of these packages are installed. The contents of `/var/lib/docker/`, including images, containers, volumes, and networks, are preserved. The Docker EE package is now called `docker-ee`. -### Extra packages for Trusty 14.04 +### Supported storage drivers -Docker EE users must use the `aufs` storage driver on production systems. Install -the `linux-image-extra-*` packages, which allow Docker EE to use the `aufs` -storage driver. +Docker EE on Ubuntu supports `overlay2` and `aufs` storage drivers. + +- For new installations on version 4 and higher of the Linux kernel, `overlay2` + is supported and preferred over `aufs`. +- For version 3 of the Linux kernel, `aufs` is supported because `overlay` or + `overlay2` drivers are not supported by that kernel version. + +If you need to use `aufs`, you will need to do additional preparation as +outlined below. + +#### Extra steps for aufs + + +
+
+ +For Ubuntu 16.04 and higher, the Linux kernel includes support for OverlayFS, +and Docker CE will use the `overlay2` storage driver by default. If you need +to use `aufs` instead, you need to configure it manually. +See [aufs](/engine/userguide/storagedriver/aufs-driver.md) + +
+
+ +Unless you have a strong reason not to, install the +`linux-image-extra-*` packages, which allow Docker to use the `aufs` storage +drivers. ```bash $ sudo apt-get update @@ -75,6 +107,9 @@ $ sudo apt-get install \ linux-image-extra-virtual ``` +
+
+ ## Install Docker EE You can install Docker EE in different ways, depending on your needs: