ubuntudockerdevopslinux-containersdevice-mapper

Docker in Ubuntu switching filesystem to overlay is not supported?


I'm running docker in a vagrant virtual box with Ubuntu on a Mac logged in as root user and I'm trying to switch from devicemapper to overlay but I'm getting an error saying:

root@vagrant-ubuntu-trusty-64:/# service docker stop
docker stop/waiting
root@vagrant-ubuntu-trusty-64:/# rm -rf /var/lib/docker
root@vagrant-ubuntu-trusty-64:/# docker daemon -s overlay
Command "daemon" is deprecated, and will be removed in Docker 1.16. Please run `dockerd` directly.
INFO[0000] libcontainerd: new containerd process, pid: 6788
WARN[0000] containerd: low RLIMIT_NOFILE changing to max  current=1024 max=4096
ERRO[0001] 'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded.
Error starting daemon: error initializing graphdriver: driver not supported
root@vagrant-ubuntu-trusty-64:/#

I've tried following instructions from:

http://www.projectatomic.io/blog/2015/06/notes-on-fedora-centos-and-docker-storage-drivers/ Unable to start Docker Service in Ubuntu 16.04

but they both do not work for me.

When I try following the documentation at:

https://docs.docker.com/engine/userguide/storagedriver/overlayfs-driver/

I get stuck at step 2 because the grep doesn't return any 'overlay' from lsmod:

root@vagrant-ubuntu-trusty-64:/# uname -r
3.13.0-107-generic
root@vagrant-ubuntu-trusty-64:/# lsmod | grep overlay
root@vagrant-ubuntu-trusty-64:/#


root@vagrant-ubuntu-trusty-64:/# dockerd --storage-driver=overlay
INFO[0000] libcontainerd: new containerd process, pid: 6816
WARN[0000] containerd: low RLIMIT_NOFILE changing to max  current=1024 max=4096
ERRO[0001] 'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded.
Error starting daemon: error initializing graphdriver: driver not supported
root@vagrant-ubuntu-trusty-64:/#

How can I fix this problem?


Solution

  • From https://docs.docker.com/engine/userguide/storagedriver/overlayfs-driver/#configure-docker-with-the-overlayoverlay2-storage-driver

    To configure Docker to use the overlay storage driver your Docker host must be running version 3.18 of the Linux kernel (preferably newer) with the overlay kernel module loaded. For the overlay2 driver, the version of your kernel must be 4.0 or newer.

    You are running kernel 3.13, so no dice. My advice would be to backup your virtual machine and try to upgrade the kernel to a newer release (I have 14.04 and there are kernels more recent available, although haven't tested how well they work) or upgrade your Ubuntu VM to 16.04