J'utilise une image nginx
qui est basée sur dockerfile/ubuntu
. Lors de la fixation à la coque du conteneur Docker
docker exec -it <container_id> /bin/bash
Je veux faire un git pull
j'ai donc essayé d'installer git
mais apt
ne trouve pas le paquet:
root@a71e45d5cd40:/# apt-get install git
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package git
Comment pouvons-nous installer git
à partir de cette image et pourquoi est-il manquant?
cat /etc/apt/sources.list
deb http://httpredir.debian.org/debian wheezy main
deb http://httpredir.debian.org/debian wheezy-updates main
deb http://security.debian.org wheezy/updates main
deb http://nginx.org/packages/mainline/debian/ wheezy nginx
cat /etc/apt/sources.list.d/*
cat: /etc/apt/sources.list.d/*: No such file or directory
apt-cache madison git
N: Unable to locate package git
Cela se produit car le référentiel apt n'est pas encore mis à jour, il est courant de nettoyer vos référentiels apt et vos fichiers tmp après avoir créé une image, ce que fait probablement votre image de base.
Pour résoudre ce problème, vous allez vouloir exécuter apt-get update
avant d'installer git, il est recommandé de combiner la commande update and install en même temps pour supprimer le cache sur la mise à jour si la ligne d'installation change:
RUN apt-get update && apt-get install -y git
En utilisant -y
est pratique pour répondre automatiquement oui à toutes les questions.