web-dev-qa-db-fra.com

Problèmes d'installation de docker sur 16.04: "Échec du démarrage du moteur de conteneur d'applications Docker."

Je viens d'essayer d'installer Docker sur mon Ubuntu 16.04 et j'obtiens l'erreur ci-dessous. Avez-vous des suggestions sur ce qui ne va pas et comment y remédier?

Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
invoke-rc.d: initscript docker, action "start" failed.
● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
   Active: activating (auto-restart) (Result: exit-code) since Fri 2017-07-28 12:39:11 CEST; 9ms ago
     Docs: https://docs.docker.com
  Process: 15533 ExecStart=/usr/bin/dockerd -H fd:// (code=exited, status=1/FAILURE)
 Main PID: 15533 (code=exited, status=1/FAILURE)

Jul 28 12:39:11 jonas-X555LAB systemd[1]: Failed to start Docker Application Container Engine.
Jul 28 12:39:11 jonas-X555LAB systemd[1]: docker.service: Unit entered failed state.
Jul 28 12:39:11 jonas-X555LAB systemd[1]: docker.service: Failed with result 'exit-code'.
dpkg: error processing package docker-ce (--configure):
 subprocess installed post-installation script returned error exit status 1
Processing triggers for libc-bin (2.23-0ubuntu9) ...
Processing triggers for systemd (229-4ubuntu19) ...
Processing triggers for ureadahead (0.100.0-19) ...
Errors were encountered while processing:
 docker-ce
E: Sub-process /usr/bin/dpkg returned an error code (1)

J'ai suivi ce guide: https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-16-04

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | Sudo apt-key add -
$ Sudo add-apt-repository "deb [Arch=AMD64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Sudo apt-get update

$ Sudo apt-cache policy docker-ce
docker-ce:
  Installed: 17.06.0~ce-0~ubuntu
  Candidate: 17.06.0~ce-0~ubuntu
  Version table:
 *** 17.06.0~ce-0~ubuntu 500
        500 https://download.docker.com/linux/ubuntu xenial/stable AMD64 Packages
        500 https://download.docker.com/linux/ubuntu xenial/Edge AMD64 Packages
        100 /var/lib/dpkg/status
     17.05.0~ce-0~ubuntu-xenial 500
        500 https://download.docker.com/linux/ubuntu xenial/Edge AMD64 Packages
     17.04.0~ce-0~ubuntu-xenial 500
        500 https://download.docker.com/linux/ubuntu xenial/Edge AMD64 Packages
     17.03.2~ce-0~ubuntu-xenial 500
        500 https://download.docker.com/linux/ubuntu xenial/stable AMD64 Packages
     17.03.1~ce-0~ubuntu-xenial 500
        500 https://download.docker.com/linux/ubuntu xenial/stable AMD64 Packages
     17.03.0~ce-0~ubuntu-xenial 500
        500 https://download.docker.com/linux/ubuntu xenial/stable AMD64 Packages

$ Sudo apt-get install -y docker-ce

Sur cette même machine, j’ai une installation Linux Mint 17.3 sur laquelle docker a très bien fonctionné. Utilisation du même répertoire de base que précédemment sur LM17.3.

Voici quelques spécifications:

$ inxi -fs
CPU:       Dual core Intel Core i3-4005U (-HT-MCP-) cache: 3072 KB 
           clock speeds: max: 1600 MHz 1: 799 MHz 2: 799 MHz 3: 799 MHz 4: 799 MHz
           CPU Flags: abm acpi aes aperfmperf apic arat Arch_perfmon avx avx2 bmi1 bmi2 bts clflush cmov
           constant_tsc cx16 cx8 de ds_cpl dtes64 dtherm dts epb ept erms est f16c flexpriority fma fpu fsgsbase
           fxsr ht invpcid lahf_lm lm mca mce mmx monitor movbe msr mtrr nonstop_tsc nopl nx pae pat pbe pcid
           pclmulqdq pdcm pdpe1gb pebs pge pln pni popcnt pse pse36 pts rdrand rdtscp rep_good sdbg sep smep ss
           sse sse2 sse4_1 sse4_2 ssse3 syscall tm tm2 tpr_shadow tsc tsc_adjust tsc_deadline_timer vme vmx vnmi
           vpid xsave xsaveopt xtopology xtpr
Sensors:   System Temperatures: cpu: 40.5C mobo: N/A
           Fan Speeds (in rpm): cpu: 2800
3
ellvtr

Ça fonctionne maintenant. Il semble que docker-ce ait toujours été installé et qu'il ait échoué car j'ai essayé de l'installer à nouveau. Très étrange. Normalement, si vous essayez d'installer un paquet déjà installé, vous obtenez quelque chose comme ceci:

$ Sudo apt install mypackage
Reading package lists... Done
Building dependency tree
Reading state information... Done
mypackage is already the newest version (5.7.19-0ubuntu0.16.04.1).
0 upgraded, 0 newly installed, 0 to remove and 27 not upgraded.

Le problème était peut-être que j'avais ajouté différents dépôts dans /etc/apt/sources.list en fonction des différents tutoriels que j'ai suivis. Gênant de ne pas avoir remarqué que le service fonctionnait en arrière-plan et fonctionnait parfaitement ..: /

1
ellvtr

Bonjour, vous souhaiterez peut-être utiliser journalctlpour voir exactement ce qui ne va pas.

Utilisez-le comme ceci:

# journalctl -u docker.service

Pour afficher les journaux et voir ce qui ne va pas exactement.

Astuce : utilisez l'indicateur --since pour filtrer votre recherche.

Pour plus d'informations sur journalctlname__, voyez cette page .

3
kuwiano

Basé sur ce lien j'ai utilisé les étapes suivantes

  • wipe/var/lib/docker (rm-rf/var/lib/docker) cela supprimera tous les conteneurs et images existants .

  • éditez le fichier/etc/default/docker et ajoutez l’option suivante: DOCKER_OPTS = "- s overlay"

puis

systemctl restart docker.service
2

Pour moi, je reçois cette erreur.

Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.

Enfin, j'ai corrigé l'erreur dans le /etc/docker/daemon.json en ajoutant une virgule manquante avant registry-mirrors

{
    "runtimes": {
        "nvidia": {
            "path": "/usr/bin/nvidia-container-runtime",
            "runtimeArgs": []
        }
    }    

    # I forget to add a comma , here !!!!!!!
    "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}

Après avoir ajouté la virgule et redémarré le menu fixe avec systemctl restart docker, j'ai résolu le problème.

0
Jayhello