Guide d’installation pour l’UE architectures distribuées FIL A1 et l’UE Services FISE LOGIN A3
1. Objectif
Que ce soit pour les tutoriels ou pour les TPs nous allons ici installer le nécessaire des dépendances. Nous allons 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. le 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é).
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
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, même si pour cette UE vous ne pousserez évidemment rien sur le GitHub
de départ.
4. Avant de démarrer - Postman
Pour faciliter les tests et le développement dans ce module vous pouvez installer l’outil Postman
très utilisé dans l’industrie.
Il faut installer le client lourd sur votre OS.
5. Environnement virtuel Python
5.1. Ce qu’il faut faire dans tous les cas
-
installer
Python
dans une version la plus récente possible pour votre OS3.XX
-
installer le gestionnaire de paquets de
Python
:pip
5.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 (et je le conseille car c’est un peu 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.
5.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 et d’installation pip -r requirements.txt
.
5.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.
6. Environnement Docker (optionnel)
6.1. Installation de Docker et DockerCompose
6.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/
6.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é.
6.2. Intégration dans un IDE
6.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). |
6.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. |