Docker Community Forums

Share and learn in the Docker community.

[Problem]Docker Daemon Can Not Start

docker

(Ericcheung) #1

Description:
Docker was running fine early.But docker daemon can not start after host server force restarting.The reason to restart the host server is docker crashed it.

]#docker ps
Cannot connect to the Docker daemon. Is ‘docker -d’ running on this host?

]#service docker status
docker dead but subsys locked

Environment:
*Kernal Version:*2.6.32-573.8.1.el6.x86_64 (RHEL 6.7)

*Docker Version:*1.7.1

Logs:
/var/log/docker
\nSat Nov 21 11:22:29 EST 2015\n
time=“2015-11-21T11:22:29.214558304-05:00” level=warning msg="You are running linux kernel version 2.6.32-573.8.1.el6.x86_64, which might be unstable running docker. Please upgrade your kernel to 3.10.0."
time=“2015-11-21T11:22:29.218656829-05:00” level=info msg="Listening for HTTP on unix (/var/run/docker.sock)“
time=“2015-11-21T11:22:29.249156479-05:00” level=info msg=”[graphdriver] using prior storage driver “devicemapper”"
time=“2015-11-21T11:22:29.279735164-05:00” level=warning msg="Running modprobe bridge nf_nat failed with message: install /dev/true\ninstall /sbin/modprobe --ignore-install bridge && /sbin/sysctl -q -w net.bridge.bridge-nf-call-arptables=0 net.bridge.bridge-nf-call-iptables=0 net.bridge.bridge-nf-call-ip6tables=0\ninstall /dev/true\ninsmod /lib/modules/2.6.32-573.8.1.el6.x86_64/kernel/net/bridge/bridge.ko \n, error: exit status 1"
time=“2015-11-21T11:22:29.377004507-05:00” level=fatal msg=“Error starting daemon: Error initializing network controller: Error creating default “bridge” network: package not installed”


(Frank) #2

Looks like you have a kernel version that is not supported. need 3.10+ to get everything to run properly.

From: https://docs.docker.com/engine/installation/rhel/
Prerequisites

Docker requires a 64-bit installation regardless of your Red Hat version. Docker
requires that your kernel must be 3.10 at minimum, which Red Hat 7 runs.

To check your current kernel version, open a terminal and use uname -r to
display your kernel version:

$ uname -r
3.10.0-229.el7.x86_64


(Ericcheung) #3

Hello Macedemo:

    Thanks for your feedback.
     
    I just use docker 1.7.1 which is not the latest docker version.

    And this version was running stable before I run a yum update with my OS.

    If I do not want to use Docker 1.9.

    Do I still need upgrade my kernel to 3.10?

(Ericcheung) #4

Dear all:

    This problem has been solved.Hope the below solution can help.

    **Root Cause:**
    1.I've run "yum update" to upgrade kernel from 2.6.32-504.30.3.el6.x86_64 to 2.6.32-573.8.1.el6.x86_64.
    2.After restart the Linux host,it will start with the new kernel version 2.6.32-573
    3.Docker daemon crashed many times until can not be started after I use kernel 2.6.32-573 to run docker 1.7.1.

    **Solution:**
    1.Edit the Linux host grub.conf file to set the previous kernel version 2.6.32-504 as default one.
    2.Restart server and the docker daemon is running stable now.

   **Lesson learn:**
   1.Do not update the kernel version if docker is running on the host. 
   2.Need to confirm the version match between host kernel and docker.

(Frank) #5

Ericcheung,
Glad you got it working. And good info to know also. I see from some of my other notes that you need minimally 2.6.24 and above for containers/docker as that’s seems when cgroups was added to the kernel. I also have notes that say it was redesigned in 2013 with changes in 3.15+ kernels. Not sure but if you upgrade to newer docker you might need to upgrade kernel version also.

v/r,

Frank