web-dev-qa-db-fra.com

Le démon Docker ne commence plus avec le noyau 3.19.0-21

Mardi cette semaine, j'ai reçu une mise à jour du noyau du 3.19.0-20 au 3.19.0-21 sur mon ordinateur portable (Latitude E6520). Au redémarrage, j'avais la panique du noyau, alors j'ai choisi 3.19.0-20 dans le menu de démarrage et tout allait bien pour le reste de la journée. Le lendemain (c'est-à-dire hier), le noyau 3.19.0-21 a démarré sans problème et tout fonctionnait correctement à l'exception du démon Docker. Le redémarrage avec le noyau 3.19.0-20 le corrige. Quelqu'un a une idée de comment le débloquer? Sinon, je définirai 3.19.0-20 comme noyau par défaut jusqu'à la prochaine mise à jour.

UPDATE: Docker 1.7 ne le résout pas. Le journal est différent cependant (voir ci-dessous).

Avec le noyau 3.19.0-21 et Docker 1.7.0:

Jun 19 10:06:35 E6520-2 systemd[1]: Starting Docker Socket for the API.
Jun 19 10:06:35 E6520-2 systemd[1]: Listening on Docker Socket for the API.
Jun 19 10:06:35 E6520-2 systemd[1]: Started Docker Application Container Engine.
Jun 19 10:06:35 E6520-2 systemd[1]: Starting Docker Application Container Engine...
Jun 19 10:06:35 E6520-2 docker[3779]: time="2015-06-19T10:06:35.917685581+02:00" level=error msg="[graphdriver] prior storage driver \"aufs\" failed: driver not supported"
Jun 19 10:06:35 E6520-2 docker[3779]: time="2015-06-19T10:06:35.917756197+02:00" level=fatal msg="Error starting daemon: error initializing graphdriver: driver not supported"
Jun 19 10:06:35 E6520-2 systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE
Jun 19 10:06:35 E6520-2 systemd[1]: Unit docker.service entered failed state.
Jun 19 10:06:35 E6520-2 systemd[1]: docker.service failed.

Parties pertinentes de /var/log/syslog ce matin:

Avec noyau 3.19.0-21:

Jun 18 10:22:27 E6520-2 systemd[1]: Started Docker Application Container Engine.
Jun 18 10:22:27 E6520-2 systemd[1]: Starting Docker Application Container Engine...
…
Jun 18 10:22:27 E6520-2 docker[891]: time="2015-06-18T10:22:27+02:00" level=warning msg="Udev sync is not supported. This will lead to unexpected behavior, data loss and errors"
Jun 18 10:22:27 E6520-2 kernel: [    7.053225] device-mapper: table: 252:0: thin-pool: unknown target type
Jun 18 10:22:27 E6520-2 kernel: [    7.053229] device-mapper: ioctl: error adding target to table
Jun 18 10:22:27 E6520-2 docker[891]: time="2015-06-18T10:22:27+02:00" level=info msg="+job serveapi(fd://)"
Jun 18 10:22:27 E6520-2 docker[891]: time="2015-06-18T10:22:27+02:00" level=info msg="Listening for HTTP on fd ()"
Jun 18 10:22:27 E6520-2 docker[891]: time="2015-06-18T10:22:27+02:00" level=fatal msg="Shutting down daemon due to errors: error intializing graphdriver: Error running DeviceCreate (CreatePool) dm_task_run failed"
Jun 18 10:22:27 E6520-2 systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE
Jun 18 10:22:27 E6520-2 systemd[1]: Unit docker.service entered failed state.
Jun 18 10:22:27 E6520-2 systemd[1]: docker.service failed.

Avec le noyau 3.19.0-20:

Jun 18 10:23:16 E6520-2 docker[1000]: time="2015-06-18T10:23:16+02:00" level=info msg="+job serveapi(fd://)"
Jun 18 10:23:16 E6520-2 docker[1000]: time="2015-06-18T10:23:16+02:00" level=info msg="Listening for HTTP on fd ()"
…
Jun 18 10:23:16 E6520-2 kernel: [    7.009467] aufs 3.x-rcN-20150105
Jun 18 10:23:16 E6520-2 docker[1000]: time="2015-06-18T10:23:16+02:00" level=warning msg="Graphdriver aufs selected. Your graphdriver directory /var/lib/docker already contains data managed by other graphdrivers: devicemapper"
Jun 18 10:23:16 E6520-2 docker[1000]: time="2015-06-18T10:23:16+02:00" level=info msg="+job init_networkdriver()"
…
Jun 18 10:23:17 E6520-2 kernel: [    7.624158] IPv6: ADDRCONF(NETDEV_UP): docker0: link is not ready
Jun 18 10:23:17 E6520-2 systemd-udevd[358]: Could not generate persistent MAC address for docker0: No such file or directory
Jun 18 10:23:17 E6520-2 avahi-daemon[894]: Joining mDNS multicast group on interface docker0.IPv4 with address 172.17.42.1.
Jun 18 10:23:17 E6520-2 avahi-daemon[894]: New relevant interface docker0.IPv4 for mDNS.
Jun 18 10:23:17 E6520-2 avahi-daemon[894]: Registering new address record for 172.17.42.1 on docker0.IPv4.
Jun 18 10:23:17 E6520-2 NetworkManager[895]: nm_device_get_device_type: assertion 'NM_IS_DEVICE (self)' failed
Jun 18 10:23:17 E6520-2 NetworkManager[895]: <info> (docker0): ignoring bridge not created by NetworkManager
…
Jun 18 10:23:17 E6520-2 NetworkManager[895]: <info> devices added (path: /sys/devices/virtual/net/docker0, iface: docker0)
Jun 18 10:23:17 E6520-2 NetworkManager[895]: <info> device added (path: /sys/devices/virtual/net/docker0, iface: docker0): no ifupdown configuration found.
…
Jun 18 10:23:17 E6520-2 systemd[1]: Started ifup for docker0.
Jun 18 10:23:17 E6520-2 systemd[1]: Starting ifup for docker0...
Jun 18 10:23:17 E6520-2 sh[1047]: Unknown interface docker0
Jun 18 10:23:17 E6520-2 kernel: [    7.632620] ip_tables: (C) 2000-2006 Netfilter Core Team
Jun 18 10:23:17 E6520-2 docker[1000]: time="2015-06-18T10:23:17+02:00" level=info msg="-job init_networkdriver() = OK (0)"
Jun 18 10:23:17 E6520-2 docker[1000]: time="2015-06-18T10:23:17+02:00" level=warning msg="Your kernel does not support cgroup swap limit."
Jun 18 10:23:17 E6520-2 systemd[1]: Scope libcontainer-1000-systemd-test-default-dependencies.scope has no PIDs. Refusing.
Jun 18 10:23:17 E6520-2 docker[1000]: time="2015-06-18T10:23:17+02:00" level=info msg="Loading containers: start."
Jun 18 10:23:17 E6520-2 docker[1000]: ....................................
Jun 18 10:23:17 E6520-2 docker[1000]: time="2015-06-18T10:23:17+02:00" level=info msg="Loading containers: done."
Jun 18 10:23:17 E6520-2 docker[1000]: time="2015-06-18T10:23:17+02:00" level=info msg="docker daemon: 1.6.2 7c8fca2; execdriver: native-0.2; graphdriver: aufs"
Jun 18 10:23:17 E6520-2 docker[1000]: time="2015-06-18T10:23:17+02:00" level=info msg="+job acceptconnections()"
Jun 18 10:23:17 E6520-2 docker[1000]: time="2015-06-18T10:23:17+02:00" level=info msg="-job acceptconnections() = OK (0)"
Jun 18 10:23:17 E6520-2 docker[1000]: time="2015-06-18T10:23:17+02:00" level=info msg="Daemon has completed initialization"
3
Thomas Broyer

Donc, il semblait que le noyau n’était pas correctement installé: il cassait également le WiFi (lspci -k ne montrait aucun pilote pour mon panier WiFi).

Après avoir utilisé exclusivement l'ancien noyau pendant plusieurs jours et rencontré des problèmes avec Docker (en raison d'un changement radical dans Docker 1.7, voir https://github.com/docker/docker/issues/14035 ) J'ai essayé de réinstaller le nouveau noyau (Sudo apt-get install --reinstall linux-image-3.19.0-21-generic) et cela a fonctionné.

0
Thomas Broyer

Aufs n'est plus inclus dans le package de noyau Ubuntu. (modprobe aufs donnera une erreur)

Parce que superposition est inclus depuis 3.18. Donc, vous pouvez simplement utiliser cela pour docker. (Je n'ai aucune idée de la migration.)

2
PAStheLoD

Une approche consiste à démarrer le conteneur Docker directement:

Je viens de commencer le deamon docker via:

$ Sudo docker -d -s overlay

au lieu de

$ Sudo docker -d

et cela a fonctionné pour moi.


Pourtant, depuis que je voulais exécuter le démon docker via

Sudo service start docker

Je devais éditer le fichier:

$ vim /etc/default/docker 


# Docker Upstart and SysVinit configuration file

# Customize location of Docker binary (especially for development testing).
#DOCKER="/usr/local/bin/docker"

# Use DOCKER_OPTS to modify the daemon startup options.
DOCKER_OPTS="--insecure-registry my-repo.de:5000 -s overlay" // here be your config

# If you need Docker to use an HTTP proxy, it can also be specified here.
#export http_proxy="http://127.0.0.1:3128/"

# This is also a handy place to Tweak where Docker's temporary files go.
#export TMPDIR="/mnt/bigdrive/docker-tmp"
0
k0pernikus