deploiement - ywsq/Projet-Dev3 GitHub Wiki
Résumé coaching 6.a
+ Le groupe a pu mettre en ligne l'application développée dans son état actuel.
+ Le groupe peut expliquer ce qu'il a dû faire pour héberger et déployer, et justifier les choix.
+ Le groupe présente sur le wiki le choix qui a été posé pour héberger l'application web : fournisseur, configuration matérielle, prix, garantie, plateforme logicielle, …
+ Le groupe présente sur le wiki la configuration du serveur utilisée et la justifie.
+ Les étudiants présentent sur le wiki la manière dont le code est déployé en production : moment, étapes, outils et protocoles utilisés, …
1. Choix du serveur d'hébergement
Pour héberger notre serveur, nous avons utilisé le VPS OVH mis à notre disposition par l'EPHEC. Cette solution est fonctionnelle et serait identique à celle que le client utiliserait plus tard, grâce à son faible coût mensuel, qui s'élève à environ 15 euros. C'est un coût très raisonnable. Actuellement la sécurisation de celui ci (fire-wall/non-super-user) est déjà mise en place et devra être installer sur le futur serveur du client.
Le fait d'avoir notre serveur dans un data center certifie sa connectivité avec une infrastructure en cas soucis internet et d'électricité, mais il faut toujours faire gaffe au données qui pourrait être perdu en càs d'incendie,....
Cependant, nous devons tout de même prendre des précautions et garder une copie de ce qui se trouve sur notre VPS en cas de dysfonctionnement de celui-ci. C'est pourquoi pour notre code, GitHub nous permet de garder sauver la version et pour la base de données, nous la sauvons toutes les jours automatiquement grace à simpleBacku^p qui va se connecter à celle ci et la sauver dans un fichier compresser dans le google drive de l'entreprise (actuellement dans le google drive de gaetan)
2. Technique de déploiement
Pour déployer l'ensemble, nous utilisons GitHub pour déployer la nouvelle version du projet. Par ailleurs, l'API et le web sont lancés dans deux instances séparées (par exemple avec Tmux). Ces deux instances pourraient facilement être mises sur des conteneurs Docker pour permettre une multiplication plus aisée des services, notamment avec Docker Swarm/Kubernetes, en cas d'expansion de l'entreprise. Nous pourrions également envisager l'utilisation d'un CDN si l'entreprise s'internationalise avec le temps.
Concernant la base de données, elle tourne sur un conteneur Docker.