Guide d’installation pour l’UE architectures distribuées FIL A1 et l’UE Services FISE LOGIN A3
1. Objectif
Nous allons ici installer le nécessaire des dépendances pour la partie 1 de cette UE. Nous allons au choix mettre en place deux solutions :
-
Passer par une installation classique de
Python
, d’un IDE, et des bibliothèquesPython
nécessaires à cette UE -
Passer par une installation de
Docker
,DockerCompose
et les plugins nécessaires dansVSCode
ouPyCharm
La première solution suffit en soit et est plus adaptée pour les phases de développement et de debug.
La deuxième solution est optionnelle et réservée à ceux qui manipulent déjà un peu Docker ou qui souhaitent décourvir (cela ne fait pas partie de l’UE à proprement parlé). Il y aura un cours sur Docker
en détail dans le parcours Back en deuxième année.
Il est bon de noter que si vous êtes sous Windows je connais mal et il faudra chercher un peu par vous même pour bien configurer votre environnement. Si vous êtes sous ARM il faudra aussi sans doute adapter des choses.
2. Avant de démarrer - IDE Python
Nous allons privilégier l’un de deux IDE suivants :
-
PyCharm
: vous avez accès à une licence complète gratuite en tant qu’étudiant (https://www.jetbrains.com/fr-fr/community/education/), mais PyCharm Community suffit aussi. -
VSCode
: IDE multi-langages gratuit de Microsoft (j’utilise plutôt cette solution de mon côté).
3. Avant de démarrer - git
Les éléments des tutoriels et des TP seront disponibles sous GitHub
. Vous pouvez au choix :
-
télécharger manuellement les archives des repository
git
-
installer
git
sur votre machine (ce qui sera souvent utile)
Et éventuellement dans le cas de la deuxième solution vous pouvez installer les extensions nécessaires pour l’intégration git
dans votre IDE. Vous ne pousserez évidemment rien sur les repository GitHub
de départ, mais dans vos repository personnels.
4. Environnement virtuel Python
4.1. Ce qu’il faut faire dans tous les cas
-
installer
Python
dans une version la plus récente possible pour votre OS3.XX
-
vous assurer que votre IDE utilise bien cette version de Python et que vous savez lancer cette version de Python depuis un terminal
-
installer le gestionnaire de paquets de
Python
:pip
dans sa version la plus récente également
4.2. Sans IDE
Dans chaque repository git
que vous allez utiliser il y aura des fichiers requirements.txt
qui sont des fichiers que pip
peut lire pour installer les dépendances nécessaires. Il installera automatiquement le contenu dans votre environnement avec la commande suivante :
pip -r requirements.txt
À noter que si vous le souhaitez (c’est plus propre) vous pouvez installer ces dépendances dans un environnement virtuel Python
créé pour chaque TP/tuto. Il faut pour cela voir comment créer un environnement virtuel en fonction de votre OS (Windows, MacOS, Linux). Il sera ensuite nécessaire d’initier votre environnement virtuel dans votre terminal avant de faire la commande d’installation précédente. Il faudra aussi systématiquement vous placer dans votre environnement virtuel.
L’avantage d’utiliser un IDE est évidemment de pouvoir mettre des points d’arrêt dans son code pour debugger. En plus de cela PyCharm
qui est un IDE spécifique à Python
vous permet de gérer les environnement virtuels et l’installation de dépendances plus simplement et sans passer par un terminal.
4.3. VSCode
Dans VSCode je n’utilise pas d’intégration particulière pour Python
et l’installation de paquets dans requirements.txt
. Je lance un terminal depuis VSCode et j’effectue les commandes manuelles de création d’un environnement virtuel (virtualenv ./venv
), pour se placer dans l’environnement virtuel (source venv/bin/activate
) et pour l’installation des requirements (pip -r requirements.txt
).
4.4. PyCharm
PyCharm est un IDE spécifique à Python
et donc l’intégration pour développer et exécuter des programmes Python
est plus directe. Dans PyCharm vous pouvez installer l’extension proposée lorsque vous ouvrez un fichier requirements.txt
et faire ensuite un click droit dans le fichier pour installer l’ensemble de paquets. Attention, cette installation sera relative à l’environnement d’exécution choisi dans PyCharm pour le projet. Par défaut il ne va pas créer d’environnement virtuel, mais vous pouvez en créer un directement depuis PyCharm.
5. Environnement Docker (optionnel)
5.1. Installation de Docker et DockerCompose
5.1.1. Sur Windows et MacOS
Vous allez devoir installer Docker Desktop, merci de vous référer à cette adresse : https://www.docker.com/products/docker-desktop/
5.1.2. Sur Linux
Dans ce cas ma préférence est d’installer Docker puis DockerCompose en suivant les instructions de votre distribution. Par exemple sur Ubuntu :
Il existe aussi un Docker Desktop pour Linux mais que je n’ai jamais testé.
5.2. Intégration Docker dans un IDE
5.2.1. VSCode
Nous allons utiliser l’intégration de VSCode avec l’environnement Docker.
Des extensions vous seront directement proposées à la détection des fichiers liés à Docker et Docker Compose, mais voici l’extension indispensable :
-
Docker (par Microsoft)
Note
|
Nous aurions pu utiliser des conteneurs de développement VSCode, mais il s’avère que ce n’est pas très adapté pour cette UE où nous allons faire intéragir plusieurs conteneurs les uns avec les autres (un par micro-service). |
5.2.2. PyCharm
L’intégration à PyCharm est également très bien faite et nécessite d’aller dans les préférences de build de PyCharm :
Note
|
Pour reconstruire les images systématiquement il faut aller changer les options de DockerCompose pour refaire un build systématique. |