356 votes

Ce qui est pip ' s '--no-cache-dir' bon pour ?

J’ai récemment vu la `` utilisée dans un fichier de Docker. Je n’ai jamais vu que drapeau avant et l’aide n'est pas expliquer :

  1. Question : ce qui est mis en cache ?
  2. Question : à quoi sert le cache ?
  3. Question : Pourquoi voudrais-je désactivez-le ?

275voto

Stack Points 1510
  1. Mise en cache: stocker à l'écart dans la clandestinité ou pour une utilisation future
  2. Il est utilisé pour stocker les fichiers d'installation(.whl, etc) des modules que vous avez installé par le biais de pip.
  3. Si vous n'avez pas l'espace sur votre disque dur, vous pourriez vouloir le désactiver

Liens vers de la documentation

https://pip.pypa.io/en/stable/reference/pip_install/#caching – @emredjan https://pip.pypa.io/en/stable/reference/pip_install/ - @mikea

15voto

PacketFiend Points 41

Une autre raison pour désactiver le pip cache - si vous exécutez pip comme un utilisateur qui n'existe pas encore, leur maison répertoire sera créé, mais la propriété de root.

Ce qui nous arrive lors de la construction d'Amazon AMIs dans un chroot - pip est en cours d'exécution en tant qu'utilisateur qui existe sur le constructeur de la machine, mais pas dans la prison chroot où l'AMI est en cours de construction. Ceci est problématique car cet utilisateur spécifique peut maintenant pas ssh à ce qui a été construit comme leur .ssh répertoire n'est pas lisible par eux.

Je ne peux pas penser à tout autre motif pip serait de fonctionner comme un utilisateur qui n'existe pas, donc c'est très bien un cas limite.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X