Ce projet est une application de réservation de films utilisant plusieurs microservices. Chaque microservice est responsable d'une partie spécifique de l'application : gestion des utilisateurs, gestion des films, gestion des horaires de projection et gestion des réservations.
Ce projet a été réalisé dans le cadre du cours d'architecture distribuée de Mme Hélène Coullon à l'IMT Atlantique. Pour plus d'informations sur le cours, vous pouvez consulter le site de Mme Hélène Coullon.
- Python 3.x
- pip (Python package installer)
-
Clonez le dépôt :
git clone https://github.com/Nathekip/UE-AD-A1-REST cd UE-AD-A1-REST -
Installez les dépendances pour chaque microservice :
pip install -r user/requirements.txt pip install -r movie/requirements.txt pip install -r showtime/requirements.txt pip install -r booking/requirements.txt
Pour lancer tous les microservices en utilisant le script runServer.py, suivez les étapes ci-dessous :
- Assurez-vous que vous êtes dans le répertoire racine du projet.
- Exécutez le script
runServer.py:python runServer.py
Ce script lancera les quatre microservices suivants :
usersur le port 3203moviesur le port 3200showtimesur le port 3202bookingsur le port 3201
Vous pouvez maintenant accéder aux différents microservices via les URL suivantes :
- Utilisateurs :
http://127.0.0.1:3203 - Films :
http://127.0.0.1:3200 - Horaires de projection :
http://127.0.0.1:3202 - Réservations :
http://127.0.0.1:3201
GET /users: Récupérer tous les utilisateursPOST /users: Ajouter un nouvel utilisateurDELETE /users/<user_id>: Supprimer un utilisateurPOST /users/<user_id>/bookings: Ajouter une réservation pour un utilisateurGET /users/bookings/<user>: Récupérer les réservations d'un utilisateurGET /users/movies/<user>: Récupérer les films réservés par un utilisateur
GET /movies: Récupérer tous les filmsPOST /movies/<movieid>: Ajouter un filmDELETE /movies/<movieid>: Supprimer un filmPUT /movies/<movieid>/<rate>: Mettre à jour la note d'un filmGET /movies/<movieid>: Récupérer un film par son IDGET /moviesbytitle: Récupérer un film par son titre
GET /showtimes: Récupérer tous les horaires de projectionPOST /showtimes: Ajouter un nouvel horaire de projectionDELETE /showtimes/<showtimeid>: Supprimer un horaire de projection
GET /bookings: Récupérer toutes les réservationsPOST /bookings/<userid>: Ajouter une réservation pour un utilisateurGET /bookings/<userid>: Récupérer les réservations d'un utilisateur
Ce projet est sous licence GNU.