Dans le cas d’un déploiement rapide d’environnements, par exemple (base) et (prod) on progresse rapidement en combinant installation par scripts et clonage, à partir d’une machine qui sert de référence. La procédure est la même qu’il s’agisse d’une distribution miniconda3 standard, d’une distribution miniconda3 focalisée sur le canal source-forge, d’une distribution miniforge3. Dans un premier temps nous installons Python. Puis par script (type install-base-miniconda.bat ou install-base.bat) nous complétons (base). Enfin nous clonons (base) en (prod), puis nous complétons l’installation par script avec un batch du type install-prod.bat. Les scripts peuvent fonctionner en mode non interactif (à éviter pour les mises à jour) ce qui revient au même que si nous utilisions des fichiers de spécification, mais en étant plus flexible car les paquetage sont groupés par thèmes/fonctionnalités dans les scripts (dont l’écriture est la somme d’expériences d’installations.) Un autre argument est qu’il faut aussi penser aux dépendances s’il y a eu des dérives entre l’environnement source (initial) et celui qu’il serait après des mises à jour.
Article mis à jour en Janvier 2026.
Navigation dans le guide
Guide [ Installation de Python sous Win-x64 ]
1. Finalisation de (base) par script
Nous devons avoir installé cet environnement et Python dans le répertoire cible, les opérations sont quasi similaires pour conda et mamba. Pour plus de détails, consulter les articles [ Installation de Python3 / Miniforge3 (Win-x64) ] et [ Installation de Python3 / Miniconda3 (Win-x64) ] sur ce blog.
Si l’installation concerne une sous version y de Python (par exemple 3.x.y) qui est susceptible de se mettre à jour en 3.x.z, il sera utile de consulter l’article [ Maitriser les mises à jour de Python ] sur ce blog. Il existe un risque que l’installation de nouveaux modules provoque des dépendances non résolues et ‘casse’ l’installation.
Prenons maintenant le cas d’une installation miniforge3, dans l’environnement (base) nous allons exécuter install-base.bat en vérifiant que la ligne set CONDA_MODE=mamba est bien active (positionnement sur l’installeur mamba au lieu de conda), l’option --yes permet de fonctionner en mode non interactif.
|
1 2 3 4 5 6 7 8 |
rem set CONDA_MODE=conda set CONDA_MODE=mamba ... if "%CONDA_MODE%" == "mamba" ( set CONDA_CMD=install --yes rem set CONDA_CMD=install ) echo Packager is [%CONDA_MODE%] with OPTS [%CONDA_CMD%] |
Voir l’article [ Scripts pour les environnements (Win-x64) ] sur ce blog pour les détail d’un tel script.
Puis nous lançons l’exécution en mode Install, tout en considérant certaines choses :
- Il faudra s’être assurés, cf. [ Installation de Python3 / Miniforge3 (Win-x64) ] sur ce blog, que le répertoire
c:\Python3et ses sous répertoires soient correctement positionnés au niveau des droits pour le groupe Utilisateurs authentifiés. - Suivant la version de miniforge3, certains paquetages existent mais peuvent poser des problèmes de dépendance, c’est souvent le cas de
PIL/pillowpar exemple (ce qui n’arrivait pas avec miniconda3). - Par rapport à miniconda3 certains paquetages n’existent pas, par exemple:
numpy-base,icc_rt,conda-ecosystem(voirfonts-conda-ecosystem),fonts-anacall,fonts-call… Pour valider s’il s’agit d’une erreur de dépendance ou d’existence, il faut utiliser l’outil de recherche associé à la liste des paquetages conda-forge [ https://conda-forge.org/packages/ ].
L’ensemble de ces problèmes est pris en compte au fur et à mesure dans install-base.bat, après une mise à jour (incluse dans le script) le script sauve l’environnement (base) dans un fichier de spécifications base-packages.txt pour un déploiement/clonage éventuel.
2. Installation et finalisation de (prod)
Pour (prod) on clone (base) ou on utilise le fichier de spécifications produit par install-base.bat. Par exemple pour un clonage :
# creation par clonageconda create --name prod --clone base |
Puis on utilise le script install-prod.bat en mode Install, voir l’article [ Scripts pour les environnements (Win-x64) ] sur ce blog pour les détail de ce type de script. Il faut avoir vérifié au préalable si on a installé biopython et biopandas en (base) si ce n’est pas le cas, il faut activer les lignes correspondantes dans le script. Le script effectue également des mises à jour et produit un fichier de spécifications prod-packages.txt pour déploiement éventuel.
3. Paquetages additionnels
Dans mon cas, j’ajoute des paquetages ou des fichiers supplémentaires par copie manuelle, en respectant quelques règles:
| Paquetages (phase) | Instructions |
| Pydot (base) | Pré-installation de Graphviz, installation de pydot-ng. Voir [ Environnement (base) : paquetages (Win-x64) ]. |
| OASA3 (prod) | Il faut installer manuellement le paquetage (pip ou copie) en modifiant certains fichiers. Voir [ Environnement (prod) : paquetages (Win-x64) – Page 3 ] |
| oasa4buildez (prod) | Il faut installer manuellement le paquetage, version 1.11 minimum. Voir [ Environnement (prod) : paquetages (Win-x64) – Page 4 ] |
| OpenBabel / Pybel (prod) | Préinstallation de OpenBabel GUI et copie de OpenBabel Data. Voir [ Environnement (prod) : paquetages (Win-x64) – Page 5 ]. |
A ce niveau l’environnement (prod) devrait être opérationnel, il est possible de le tester avec des programmes faisant appel à OASA, OpenBabel, Rdkit …
Liens et lectures
- Welcome to Mamba’s documentation! [ https://mamba.readthedocs.io/en/latest/ ].
- Conda (package manager) [ https://en.wikipedia.org/wiki/Conda_(package_manager) ].
- Packages in conda-forge [ https://conda-forge.org/packages/ ].
- mamba documentation [ https://fig.io/manual/mamba ].