💾 Archived View for bwog-notes.chagratt.site › 2016 › faire-un-d%C3%A9p%C3%B4t › miroir-pip-local › … captured on 2022-06-03 at 23:01:06. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2022-04-28)
-=-=-=-=-=-=-
Rédigé le 25 avril 2016 - modifié le 19 février 2020. Étiquettes : python
L'outil pip de python offre la possibilité de faire un dépôt local avec la sous-commande download et les options --no-index couplée à --find-links.
Dans certains cas, on peut avoir besoin de conserver de manière particulière les dépendances de son projet.
Au delà du gel de la version, il y a aussi la question de l'accès, et il arrive que la machine cible soit totalement isolée.
Avec le langage python et plus particulièrement l'outil pip, la marche à suivre pour avoir un dépôt en local est simple :
- écrire un fichier requirements.txt contenant les dépendances à récupérer
- créer un dossier spécifique (ex offline_repo)
- utiliser la commande suivante pour récupérer les paquets : pip download ./offline_repo -r requirements.txt
A partir de là, le dossier offline_repo peut être archivé et copié sur la machine qui va avoir besoin de ces modules.
Ne pas oublier le fichier requirements.txt.
Les modules n'auront pas été installés sur le système, ce qui le laisse propre.
Pour installer ces dépendances sur la nouvelle machine (à l'aide du dossier précédemment créé), la commande est :
pip install --no-index --find-links=/home/USER/chemin/absolu/offline_repo -r requirements.txt
Et voilà !
---
La commande pour télécharger les paquets était pip install --download ... au moment de la publication.
Mais elle n'est plus valide
.
Truc marrant, cette façon de faire
quand j'ai rédigé cette note,
mais j'avais un environnement avec des versions de python et pip trop vieilles pour m'en rendre compte.
-------------------------------
→ Plus ancien : RPM : Dépendance non satisfaite sur un chemin
Aléatoire : Ansible : enregistrer un dictionnaire dans un fichier yaml local
Contenu sous licence CC-BY-SA