dockerd: Error initializing network controller: list bridge addresses failed: no available network

Contexte : CentOS 7. Package docker-engine fraichement installé depuis le repository officiel.

Erreur lors du lancement du service docker-engine :

$ sudo systemctl status -l docker.service 
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since sam. 2017-01-28 10:03:24 CET; 2min 33s ago
     Docs: https://docs.docker.com
  Process: 11478 ExecStart=/usr/bin/dockerd (code=exited, status=1/FAILURE)
 Main PID: 11478 (code=exited, status=1/FAILURE)

janv. 28 10:03:24 simon-laptop.home dockerd[11478]: Error starting daemon: Error initializing network controller: list bridge addresses failed: no available network
janv. 28 10:03:24 simon-laptop.home systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE
janv. 28 10:03:24 simon-laptop.home systemd[1]: Failed to start Docker Application Container Engine.
janv. 28 10:03:24 simon-laptop.home systemd[1]: Unit docker.service entered failed state.
janv. 28 10:03:24 simon-laptop.home systemd[1]: docker.service failed.

Même erreur en lançant manuellement docker :

$ sudo 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: 12001 
WARN[0000] containerd: low RLIMIT_NOFILE changing to max  current=1024 max=4096
INFO[0001] Graph migration to content-addressability took 0.00 seconds 
INFO[0001] Loading containers: start.                   
INFO[0001] Firewalld running: true                      
Error starting daemon: Error initializing network controller: list bridge addresses failed: no available network

Le problème venait en fait la présence d’un nameserver IPv6 en lien local dans /etc/resolv.conf :

$ cat /etc/resolv.conf 
# Generated by NetworkManager
search home
nameserver 192.168.1.1
nameserver fe80::ba26:6cff:feb9:6e50%enp8s0

Nouvelle tentative en retirant la dernière ligne :

$ head -n -1 /etc/resolv.conf | sudo tee /etc/resolv.conf
$ sudo dockerd -s overlay
(...)
INFO[0001] Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon option --bip can be used to set a preferred IP address 

Pour rendre la modification permanente, il faut, au choix :

  • Désactiver NetworkManager
  • Désactiver la configuration automatique du DNS sur IPv6
  • Désactiver complétement IPv6 sur l’interface (ici enp8s0)

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s