J'ai installé l'image Ubuntu 14.04 sur le menu fixe. Après cela, lorsque j'essaye d'installer des paquets dans l'image d'ubuntu, je n'arrive pas à localiser l'erreur du paquet:
apt-get install curl
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package curl
Comment réparer cette erreur?
C'est parce qu'il n'y a pas de cache de paquet dans l'image, vous devez exécuter:
apt-get update
avant d'installer des packages, et si votre commande est dans un fichier Docker, vous aurez alors besoin de:
apt-get -y install curl
Pour supprimer la sortie standard d'une commande, utilisez -qq
. Par exemple.
apt-get -qq -y install curl
Extrait du docs in mai 2018:
Combinez toujours
RUN apt-get update
avecapt-get install
dans le mêmeRUN
statement, par exemple
RUN apt-get update && apt-get install -y package-bar
(...)
L'utilisation de
apt-get update
seul dans une instructionRUN
provoque la mise en cache les problèmes et les instructionsapt-get install
suivantes échouent.
Ajoutez la commande suivante dans Dockerfile:
RUN apt-get update
Assurez-vous que votre fichier Dockerfile ne contient pas d'erreur de syntaxe, car cela peut également provoquer cette erreur. Un exemple correct est:
RUN apt-get update \
&& apt-get -y install curl \
another-package
C'était une combinaison de la correction d'une erreur de syntaxe et de l'ajout de apt-get update
qui a résolu le problème pour moi.
Vous devez mettre à jour la liste des paquets dans votre Ubuntu:
$ Sudo apt-get update
$ Sudo apt-get install <package_name>
L'erreur vient parce que vous n'avez pas le package ou le référentiel qui le contient.
Solution simple, vous devriez faire apt-get update puis essayer.