Eh bien, j'ai finalement corrigé le problème
Tout ce que vous avez à faire est de charger un autre pilote de stockage dans mon cas, j'utiliserai overlay
:
- Désactiver le service Docker :
sudo systemctl stop docker.service
- Démarrer le démon Docker (
overlay
pilote) :sudo docker daemon -s overlay
- Exécuter le conteneur de démonstration :
sudo docker run hello-world
Afin de rendre ces modifications permanentes, vous devez modifier /etc/default/docker
fichier et ajoutez l'option :
DOCKER_OPTS="-s overlay"
La prochaine fois, Service Docker être chargé, il exécutera docker daemon -s overlay
Les commandes de démasquage suivantes ont fonctionné pour moi (Ubuntu 18). J'espère que cela aidera quelqu'un là-bas... :-)
sudo systemctl unmask docker.service
sudo systemctl unmask docker.socket
sudo systemctl start docker.service
Mettre à jour
Il semble que dans les nouvelles versions de docker et d'Ubuntu, le fichier d'unité pour docker soit simplement masqué (pointant vers /dev/null).
Vous pouvez le vérifier en exécutant les commandes suivantes dans le terminal :
sudo file /lib/systemd/system/docker.service
sudo file /lib/systemd/system/docker.socket
Vous devriez voir que le fichier d'unité a un lien symbolique vers /dev/null.
Dans ce cas, tout ce que vous avez à faire est de suivre la suggestion de S34N et d'exécuter :
sudo systemctl unmask docker.service
sudo systemctl unmask docker.socket
sudo systemctl start docker.service
sudo systemctl status docker
Je conserverai également le message d'origine, qui répond au journal d'erreur indiquant que le pilote de stockage doit être remplacé :
Message d'origine
J'ai eu le même problème et j'ai essayé de le résoudre avec la suggestion de Salva Cort, mais en imprimant /etc/default/docker
dit :
# CE FICHIER NE S'APPLIQUE PAS À SYSTEMD
Voici donc un correctif permanent qui fonctionne pour systemd (Ubuntu 15.04 et supérieur) :
-
créer un nouveau fichier
/etc/systemd/system/docker.service.d/overlay.conf
avec le contenu suivant :[Service] ExecStart= ExecStart=/usr/bin/docker daemon -H fd:// -s overlay
-
vider les modifications en exécutant :
sudo systemctl daemon-reload
-
vérifiez que la configuration a bien été chargée :
systemctl show --property=ExecStart docker
-
redémarrer docker :
sudo systemctl restart docker
J'ai eu le même problème après la mise à niveau de docker de 17.05-ce à 17.06-ce via docker-machine
-
Mettre à jour /etc/systemd/system/docker.service.d/10-machine.conf
remplacer
`docker daemon` => `dockerd`
exemple de
[Service] ExecStart= ExecStart=/usr/bin/docker deamon -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --storage-driver aufs --tlsverify --tlscacert /etc/docker/ca.pem --tlscert /etc/docker/server.pem --tlskey /etc/docker/server-key.pem --label provider=generic Environment=
à
[Service] ExecStart= ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --storage-driver aufs --tlsverify --tlscacert /etc/docker/ca.pem --tlscert /etc/docker/server.pem --tlskey /etc/docker/server-key.pem --label provider=generic Environment=
-
vider les modifications en exécutant :
sudo systemctl daemon-reload
-
redémarrer docker :
sudo systemctl restart docker