Browse code

Deprecate legacy overlay storage driver, and add warning

The `overlay` storage driver is deprecated in favor of the `overlay2` storage
driver, which has all the benefits of `overlay`, without its limitations (excessive
inode consumption). The legacy `overlay` storage driver will be removed in a future
release. Users of the `overlay` storage driver should migrate to the `overlay2`
storage driver.

The legacy `overlay` storage driver allowed using overlayFS-backed filesystems
on pre 4.x kernels. Now that all supported distributions are able to run `overlay2`
(as they are either on kernel 4.x, or have support for multiple lowerdirs
backported), there is no reason to keep maintaining the `overlay` storage driver.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

Sebastiaan van Stijn authored on 2018/10/11 19:47:34
Showing 2 changed files
... ...
@@ -314,7 +314,7 @@ func isEmptyDir(name string) bool {
314 314
 func isDeprecated(name string) bool {
315 315
 	switch name {
316 316
 	// NOTE: when deprecating a driver, update daemon.fillDriverInfo() accordingly
317
-	case "devicemapper":
317
+	case "devicemapper", "overlay":
318 318
 		return true
319 319
 	}
320 320
 	return false
... ...
@@ -132,7 +132,7 @@ func (daemon *Daemon) fillDriverInfo(v *types.Info) {
132 132
 			drivers += fmt.Sprintf(" (%s) ", os)
133 133
 		}
134 134
 		switch gd {
135
-		case "devicemapper":
135
+		case "devicemapper", "overlay":
136 136
 			v.Warnings = append(v.Warnings, fmt.Sprintf("WARNING: the %s storage-driver is deprecated, and will be removed in a future release.", gd))
137 137
 		}
138 138
 	}