2

Installation with apt-get -y install docker-engine as described in https://docs.docker.com/engine/installation/linux/debian/ fails with

Job for docker.service failed. See 'systemctl status docker.service' and 'journalctl -xn' for details.

systemctl status docker.service gives

● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled)
   Active: failed (Result: exit-code) since Sun 2017-02-19 11:03:55 CET; 1min 22s ago
     Docs: https://docs.docker.com
 Main PID: 5157 (code=exited, status=1/FAILURE)

Feb 19 11:03:55 v72089.1blu.de dockerd[5157]: time="2017-02-19T11:03:55.594281147+01:00" level=error msg="'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded."
Feb 19 11:03:55 v72089.1blu.de dockerd[5157]: time="2017-02-19T11:03:55.595650295+01:00" level=error msg="'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded."
Feb 19 11:03:55 v72089.1blu.de dockerd[5157]: time="2017-02-19T11:03:55.640984406+01:00" level=info msg="Graph migration to content-addressability took 0.00 seconds"
Feb 19 11:03:55 v72089.1blu.de dockerd[5157]: time="2017-02-19T11:03:55.642147968+01:00" level=warning msg="Your kernel does not support oom control"
Feb 19 11:03:55 v72089.1blu.de dockerd[5157]: time="2017-02-19T11:03:55.642181377+01:00" level=warning msg="Your kernel does not support memory swappiness"
Feb 19 11:03:55 v72089.1blu.de dockerd[5157]: time="2017-02-19T11:03:55.642199036+01:00" level=warning msg="Your kernel does not support kernel memory limit"
Feb 19 11:03:55 v72089.1blu.de dockerd[5157]: time="2017-02-19T11:03:55.642215415+01:00" level=warning msg="Unable to find cpu cgroup in mounts"
Feb 19 11:03:55 v72089.1blu.de dockerd[5157]: time="2017-02-19T11:03:55.642262936+01:00" level=warning msg="Unable to find cpuset cgroup in mounts"
Feb 19 11:03:55 v72089.1blu.de dockerd[5157]: time="2017-02-19T11:03:55.642312565+01:00" level=warning msg="mountpoint for pids not found"
Feb 19 11:03:55 v72089.1blu.de dockerd[5157]: Error starting daemon: Devices cgroup isn't mounted

The overlay module seems not to be installed on my distribution (it is a hosted virtual server).

uname -r
3.16.0-042stab120.11

lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 8.7 (jessie)
Release:    8.7
Codename:   jessie

Updating the kernel (https://backports.debian.org/Instructions/) with apt-get install -t jessie-backports linux-image-amd64 installs the overlay module in /lib/modules/4.9.0-0.bpo.1-amd64/kernel/fs/overlayfs/overlay.ko but this still doesn't allow me to install docker, I get the same error as mentioned above.

Edit: This is what docker version tells me

Client:
 Version:      1.13.1
 API version:  1.26
 Go version:   go1.7.5
 Git commit:   092cba3
 Built:        Wed Feb  8 06:36:34 2017
 OS/Arch:      linux/amd64
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

Edit 2: I have no problem with Docker on my Mac in VirtualBox Debian Jessie, that is why I think it is about the Debian distribution. One difference I found was that in the VB Debian there is storage driver "aufs" installed, in the hosted one, neither "aufs" nor "overlay".

Any ideas here? What can I do?

PS: I don't think the problem is related to that question error starting docker daemon on ubuntu 14.04 (Devices cgroup isn't mounted) as they don't have a storage driver problem.

Edit 3: I tried this:

root@v72089:~# cat  /etc/systemd/system/docker.service.d/00-execstart.conf
ExecStart=/usr/bin/dockerd -H fd:// --storage-driver aufs

root@v72089:~# systemctl daemon-reload && systemctl start docker
Job for docker.service failed. See 'systemctl status docker.service' and 'journalctl -xn' for details.

root@v72089:~# systemctl status docker.service
● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled)
  Drop-In: /etc/systemd/system/docker.service.d
           └─00-execstart.conf
   Active: failed (Result: exit-code) since Mon 2017-02-20 09:38:53 CET; 9s ago
     Docs: https://docs.docker.com
  Process: 29655 ExecStart=/usr/bin/dockerd -H fd:// (code=exited, status=1/FAILURE)
 Main PID: 29655 (code=exited, status=1/FAILURE)

Feb 20 09:38:53 v72089.1blu.de dockerd[29655]: time="2017-02-20T09:38:53.185963477+01:00" level=error msg="'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded."
Feb 20 09:38:53 v72089.1blu.de dockerd[29655]: time="2017-02-20T09:38:53.187730948+01:00" level=error msg="'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded."
Feb 20 09:38:53 v72089.1blu.de dockerd[29655]: time="2017-02-20T09:38:53.192048419+01:00" level=info msg="Graph migration to content-addressability took 0.00 seconds"
Feb 20 09:38:53 v72089.1blu.de dockerd[29655]: time="2017-02-20T09:38:53.192821521+01:00" level=warning msg="Your kernel does not support oom control"
Feb 20 09:38:53 v72089.1blu.de dockerd[29655]: time="2017-02-20T09:38:53.192846291+01:00" level=warning msg="Your kernel does not support memory swappiness"
Feb 20 09:38:53 v72089.1blu.de dockerd[29655]: time="2017-02-20T09:38:53.192862149+01:00" level=warning msg="Your kernel does not support kernel memory limit"
Feb 20 09:38:53 v72089.1blu.de dockerd[29655]: time="2017-02-20T09:38:53.192872455+01:00" level=warning msg="Unable to find cpu cgroup in mounts"
Feb 20 09:38:53 v72089.1blu.de dockerd[29655]: time="2017-02-20T09:38:53.192908839+01:00" level=warning msg="Unable to find cpuset cgroup in mounts"
Feb 20 09:38:53 v72089.1blu.de dockerd[29655]: time="2017-02-20T09:38:53.192954496+01:00" level=warning msg="mountpoint for pids not found"
Feb 20 09:38:53 v72089.1blu.de dockerd[29655]: Error starting daemon: Devices cgroup isn't mounted

root@v72089:~# dockerd --storage-driver overlay
INFO[0000] libcontainerd: new containerd process, pid: 29703
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@v72089:~# find / -name overlay*
/lib/modules/4.9.0-0.bpo.1-amd64/kernel/fs/overlayfs
/lib/modules/4.9.0-0.bpo.1-amd64/kernel/fs/overlayfs/overlay.ko

root@v72089:~# dockerd --storage-driver aufs
INFO[0000] libcontainerd: new containerd process, pid: 29735
Error starting daemon: error initializing graphdriver: driver not supported

root@v72089:~# dockerd --storage-driver devicemapper
INFO[0000] libcontainerd: new containerd process, pid: 29785
Error starting daemon: error initializing graphdriver: driver not supported
2
  • Sorry for not answering, but I have a question: Are you hosting the virtual server yourself or is it a from a shared hoster? Because if it's a shared hoster, how are you able to update the kernel? Thanks.
    – mfnalex
    Commented Feb 19, 2017 at 13:09
  • Thanks for your reply. It is from a shared hoster, but I have root access, I can do what is explained here: wiki.debian.org/HowToUpgradeKernel
    – MichaMuc
    Commented Feb 19, 2017 at 14:10

2 Answers 2

0

To switch to another storage driver, you can add --storage-driver aufs to the dockerd startup command. With systemd, I believe you can simply run this as root:

mkdir -p /etc/systemd/system/docker.service.d
echo "ExecStart=/usr/bin/dockerd -H fd:// --storage-driver aufs" >/etc/systemd/system/docker.service.d/00-execstart.conf

Then systemctl daemon-reload && systemctl start docker. For the cgroups warnings, the linked answer for ubuntu should help. 3.16 is one of the first kernels docker supported, so not all of the features will be available with this kernel.

5
  • Did you follow your linked question to resolve the cgroup error? That includes a reboot which will help with the storage driver if you recently upgraded kernels.
    – BMitch
    Commented Feb 20, 2017 at 10:13
  • I tried, but there was no GRUB installed on that server and I am not familiar with it. I thought it is only necessary if you have different OS on one machine, isn't it? I installed the package via apt-get install grub, df -h told me there was only one device /dev/ploop38036p1. grub-install /dev/ploop38036p1 failed... Why do I need to use GRUB at all?
    – MichaMuc
    Commented Feb 20, 2017 at 14:40
  • That's multiple things that don't line up with the Debian install I'm familiar with. What does cat /etc/debian_version show?
    – BMitch
    Commented Feb 20, 2017 at 19:28
  • That is why I have no problem installing Docker on my local machine but can't get it working on the hosted server. Maybe that is because it is a hosted and adjusted distribution? It shows 8.7 (see also the response of uname -r and lsb_release -a in the question)
    – MichaMuc
    Commented Feb 21, 2017 at 8:13
  • It would appear so, not really sure what they've changed. Might want to send a request directly to the hosting provider.
    – BMitch
    Commented Feb 21, 2017 at 11:39
-1

What finally solved my issue: talking with the host of the server. They seemed to use a different kernel that made it impossible to install Docker. I changed the server at the same host and everything worked fine.

Not the answer you're looking for? Browse other questions tagged or ask your own question.