« Slippi Stats Web » : différence entre les versions

2 374 octets ajoutés ,  il y a 3 ans
Mise à jour des instructions suite à la nouvelle version et aux différentes options d'installations proposées
(Création de la page)
 
(Mise à jour des instructions suite à la nouvelle version et aux différentes options d'installations proposées)
 
(2 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 :
Slippi Stats Web est un projet visant à visualiser des données extraites depuis les fichiers replays de [[Slippi]] (.slp) dans une interface web. Le projet est hébergé sur [https://gitlab.com/Coukaratcha/slippi-stats-web Gitlab].
 
Une instance de démonstration est accessible sur https://slippi.mickaelgillot.xyz
Ligne 6 :
 
=== Pré-requis ===
Il existe 3 façons d'installer Slippi Stats Web :
Il est vivement recommandé d'utiliser Docker et Docker Compose pour installer l'application. En effet, le projet a besoin d'une configuration sur l'environnement pour fonctionner correctement (base de données MySQL, compilateur SCSS, Nodejs, Python, Flask, etc). Cette configuration est automatiquement faite en utilisant Docker et Docker Compose.
 
* Utiliser directement le fichier binaire exécutable pour Windows (.exe)
Bien entendu, il reste cependant possible de configurer manuellement l'environnement avec toutes ces dépendances pour faire fonctionner Slippi Stats Web.
* Télécharger les sources pour lancer le programme avec Python
* Télécharger les sources pour lancer le programme via un container Docker
 
Pour ces 3 façons, vous trouverez des instructions détaillées dans les sections plus bas.
=== Installation avec Docker et Docker Compose ===
Dans un premier temps, il faut récupérer les sources du projet. Pour cela, on peut cloner le dépôt git
 
=== Installation avec les binaires (pour Windows uniquement) ===
<code>$ git clone git@gitlab.com:Coukaratcha/slippi-stats-web.git</code>
 
ou# téléchargerAller sur la page unedes archivereleases du projet [sur Gitlab et télécharger la dernière version du fichier ''Windows binaries'' (https://gitlab.com/Coukaratcha/slippi-stats-web/-/archive/master/slippi-stats-web-master.zip ici].releases)
# Désarchiver le fichier .zip dans le dossier de votre choix sur votre ordinateur
# Aller dans le répertoire ssw/ et dupliquer le fichier config.cfg.sample. Renommer ce nouveau fichier en config.cfg.
# Ouvrir le fichier config.cfg créé à l'étape précédente et remplir au minimum les trois valeurs suivantes :
## PLAYER_CODE : Votre code Slippi.
## REPLAYS : Le chemin vers le répertoire où sont stockés vos replays Slippi (.slp). '''Note''' ''':''' Vous devez doubler les anti-slashs (\) dans le chemin que vous rentrez. Par exemple, C:\Users\Couka\Documents\replays devient C:\\Users\\Couka\\Documents\\replays
## LOCAL_ONLY : Mettre "True" si l'application ne tournera que sur votre ordinateur sans qu'elle soit accessible depuis internet. Ne mettre "False" que si vous installez cette application sur un serveur ouvert sur Internet. Si vous avez mis "False" à LOCAL_ONLY, vous devez également remplir les deux champs suivants :
### SECRET_KEY : Mettre une chaine de caractères aléatoire. Il est recommandé d'utiliser un générateur de mot de passe.
### PASSWORD : Mettre un mot de passe. Ce mot de passe sera nécessaire pour accéder aux parties admin de l'application.
# Lancer l'exécutable slippi-stats-web.exe en double-cliquant dessus.
# Aller sur <nowiki>http://localhost:5000</nowiki> dans le navigateur web de votre choix pour accéder à l'application.
 
=== Installation avec Python ===
Ensuite, il faut générer plusieurs fichiers de configuration. Pour cela, il faut copier les fichiers avec les extensions .sample en supprimant l'extension.
Pour lancer le programme avec Python, il faut que Python 3 soit installé sur votre machine.
 
# Récupérer les sources du programme en clonant le dépot ou en téléchargeant une archive avec le bouton Download.
On commence avec <code>production.env.sample</code> qu'on copie vers <code>production.env</code>.
# Aller dans le répertoire web/app/ssw/ et dupliquer le fichier config.cfg.sample. Renommer ce nouveau fichier en config.cfg.
# Ouvrir le fichier config.cfg créé à l'étape précédente et remplir au minimum les trois valeurs suivantes :
## PLAYER_CODE : Votre code Slippi.
## REPLAYS : Le chemin vers le répertoire où sont stockés vos replays Slippi (.slp). '''Note''' ''':''' Vous devez doubler les anti-slashs (\) dans le chemin que vous rentrez. Par exemple, C:\Users\Couka\Documents\replays devient C:\\Users\\Couka\\Documents\\replays
## LOCAL_ONLY : Mettre "True" si l'application ne tournera que sur votre ordinateur sans qu'elle soit accessible depuis internet. Ne mettre "False" que si vous installez cette application sur un serveur ouvert sur Internet. Si vous avez mis "False" à LOCAL_ONLY, vous devez également remplir les deux champs suivants :
### SECRET_KEY : Mettre une chaine de caractères aléatoire. Il est recommandé d'utiliser un générateur de mot de passe.
### PASSWORD : Mettre un mot de passe. Ce mot de passe sera nécessaire pour accéder aux parties admin de l'application.
# Installer les dépendances en laçant la commande suivante : pip install -r requirements.txt
# Lancer le programme en laçant la commande suivante : python run.py
# Aller sur <nowiki>http://localhost:5000</nowiki> dans le navigateur web de votre choix pour accéder à l'application.
 
=== Installation avec Docker et Docker Compose ===
Il faut ensuite le modifier pour renseigner les valeurs manquantes :
 
# Récupérer les sources du programme en clonant le dépot ou en téléchargeant une archive avec le bouton Download.
* <code>MYSQL_ROOT_PASSWORD</code>
# Dupliquer le fichier production.env.sample et renommer le nouveau fichier en production.env.
* <code>MYSQL_PASSWORD</code>
# Ouvrir le fichier config.cfg créé à l'étape précédente et remplir au minimum les deux valeurs suivantes :
## PLAYER_CODE : Votre code Slippi.
## LOCAL_ONLY : Mettre "True" si l'application ne tournera que sur votre ordinateur sans qu'elle soit accessible depuis internet. Ne mettre "False" que si vous installez cette application sur un serveur ouvert sur Internet. Si vous avez mis "False" à LOCAL_ONLY, vous devez également remplir les deux champs suivants :
### SECRET_KEY : Mettre une chaine de caractères aléatoire. Il est recommandé d'utiliser un générateur de mot de passe.
### PASSWORD : Mettre un mot de passe. Ce mot de passe sera nécessaire pour accéder aux parties admin de l'application.
# Lancer le build de l'image et le lancement du container en laçant la commande suivante : docker-compose up -d
# Déposer les fichiers à importer dans le dossier replays/ créé par docker-compose au lancement du container. '''Note :''' Vous pouvez remplacer ce dossier par un lien symbolique pointant vers un autre dossier où vous stockiez déjà vos fichiers pour ne pas avoir à les dupliquer.
# Aller sur <nowiki>http://localhost:5000</nowiki> dans le navigateur web de votre choix pour accéder à l'application.
 
== Résolution des problèmes ==
Pour cela, il est conseillé d'utiliser des mots de passe forts. On peut s'aider de générateurs de mot de passe [https://bitwarden.com/password-generator/ ici] ou [https://www.lastpass.com/fr/password-generator là].
Pour l'installation avec les binaires pour Windows, il est possible que votre logiciel anti-malware/anti-virus détecte le programme comme un logiciel malveillant. Pour tout de même lancer le programmer sans déclencher une alerte, rajoutez une exception pour le répertoire dans lequel est installé Slippi Stats Web.
 
Vous pouvez trouver des instructions détaillées pour ajouter une exception dans Windows Defender sur Windows 10 [https://www.howtogeek.com/671233/how-to-add-exclusions-in-windows-defender-on-windows-10/ ici].
On continue la même chose pour <code>cron/script/conf/database.json.sample</code> en remplaçant le champ <code>password</code> avec la valeur de <code>MYSQL_PASSWORD</code>.
[[Catégorie:Aide technique]]
 
Même opération pour <code>web/app/slippi_stats_web/prod.cfg.sample</code>. Ici, il y a 3 champs à renseigner :
 
* <code>SQLALCHEMY_DATABASE_URI</code> : L'URI doit suivre le format suivant <code>mysql://<MYSQL_USER>:<MYSQL_PASSWORD>@db/<MYSQL_DATABASE></code> ; donc si vous n'avez changé que le mot de passe dans le premier fichier de configuration <code>production.env</code>, ça devrait être <code>mysql://slippi-stats:<MYSQL_PASSWORD>@db/slippi-stats</code>.
* <code>PLAYER_CODE</code> : Il s'agit de votre code sur Slippi. Il doit ressembler à <code>XXXX#123</code>
* <code>SECRET_KEY</code> : Remplissez ce champ avec un nouveau mot de passe.
 
Enfin, copier juste <code>web/production.env.sample</code> vers <code>web/production.env</code>. Pour ce fichier, aucune modification n'est nécessaire.
 
Maintenant que tous les fichiers de configuration sont correctement créés, il ne reste plus qu'à créer les deux répertoires dont aura besoin Slippi Stats Web :
 
* <code>data/</code> : Ce répertoire contiendra les fichiers de la base de données qui sera créé. Ces données persisteront après l'arrêt du service.
* <code>replays/</code> : Ce répertoire contiendra les fichiers <code>.slp</code> que vous voudrez analyser. Toutes les 15mn, Slippi Stats Web analysera ce répertoire pour analyser les nouveaux fichiers et extraire les données avant de les insérer dans la base de données.
 
Voilà, tout est prêt !
 
Vous pouvez donc lancer le service avec la commande suivante :
 
<code>$ docker-compose up -d</code>
 
Une fois la commande terminée, vous devriez pouvoir accéder à l'interface web en ouvrant un navigateur web puis en vous rendant sur http://localhost:5000.
58

modifications