serveur_hebergement:i_hate_money

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
serveur_hebergement:i_hate_money [2022/10/03 09:45] fateserveur_hebergement:i_hate_money [2024/06/07 17:55] (Version actuelle) fate
Ligne 3: Ligne 3:
 ===== Introduction ===== ===== Introduction =====
  
-[[https://github.com/spiral-project/ihatemoney|I hate money]] est un logiciel permettant de gérer les budget partagés, comme pour le jour de l'an par exemple. Chaque participant peut rentrer de nouvelles factures et le logiciel calcule automatiquement qui doit combien à qui. Ça fait comme tricount sauf que c'est libre et peut être auto-hébergé+[[https://github.com/spiral-project/ihatemoney|I hate money]] est un logiciel permettant de gérer les budgets partagés, comme pour le jour de l'an par exemple. Chaque participant peut rentrer de nouvelles factures et le logiciel calcule automatiquement qui doit combien à qui. Ça fait comme tricount sauf que c'est libre et peut être auto-hébergé
  
 ===== Installation ===== ===== Installation =====
Ligne 9: Ligne 9:
 L'accès au logiciel se fait via une interface web. Il vous faudra donc un serveur web, qui sera Apache dans mon cas, et un nom de domaine. Je vais installer I hate money sur mon Raspberry (Raspbian 11). L'accès au logiciel se fait via une interface web. Il vous faudra donc un serveur web, qui sera Apache dans mon cas, et un nom de domaine. Je vais installer I hate money sur mon Raspberry (Raspbian 11).
  
-Commençons pas installer les pré-requis +Commençons par installer les pré-requis 
-<code bash>sudo aptitude install python3-dev libssl-dev libapache2-mod-wsgi-py3</code>+<code bash>sudo aptitude install python3-dev libssl-dev libapache2-mod-wsgi-py3 python3-venv</code>
  
-Créez un environnement virtuel +Créez un environnement virtuel dans /var/www 
-<code bash>python3 -m venv ~/ihatemoney</code>+<code bash>sudo -u www-data python3 -m venv /var/www/ihatemoney</code>
  
 Puis accédez-y  Puis accédez-y 
-<code>cd ~/ihatemoney</code>+<code>cd /var/www/ihatemoney</code>
  
 Activez l'environnement virtuel Activez l'environnement virtuel
Ligne 22: Ligne 22:
  
 Installez I hate money Installez I hate money
-<code bash>pip install ihatemoney</code>+<code bash>sudo -u www-data pip install ihatemoney</code>
  
 Installez PyMySQL Installez PyMySQL
-<code bash>pip install 'PyMySQL>=0.9,<1.1'</code>+<code bash>sudo -u www-data pip install 'PyMySQL>=0.9,<1.1'</code>
  
 C'est terminé pour l'installation. Passons à la configuration C'est terminé pour l'installation. Passons à la configuration
Ligne 31: Ligne 31:
 ===== Configuration ===== ===== Configuration =====
  
-Créez les répertoire de I hate money+Créez les répertoires de I hate money
 <code bash>sudo mkdir /etc/ihatemoney /var/lib/ihatemoney</code> <code bash>sudo mkdir /etc/ihatemoney /var/lib/ihatemoney</code>
  
Ligne 110: Ligne 110:
 MAIL_PASSWORD = "mot de passe" #à adapter MAIL_PASSWORD = "mot de passe" #à adapter
 </code> </code>
-Pensez à adaptez les lignes où il est indiqué "#à adapter".+Pensez à adapter les lignes où il est indiqué "#à adapter".
  
 Créez la base de donnée mysql ihatemoney ainsi que l'utilisateur ihatemoney ayant pour mot de passe celui que vous avez indiqué dans le fichier de configuration. Créez la base de donnée mysql ihatemoney ainsi que l'utilisateur ihatemoney ayant pour mot de passe celui que vous avez indiqué dans le fichier de configuration.
  
-Il ne reste plus qu'à créer le vhost Apache+Créez le mot de passe admin :  
 +<code bash>ihatemoney generate_password_hash</code> 
 +Ca va vous générer un hash qu'il faudra mettre dans le fichier de configuration.
  
-===== Vhost Apache =====+Il ne reste plus qu'à créer le vhost Apache
  
-I hate money permet de pré-créer le fichier vhost +===== Configuration Apache2 =====
-<code bash>ihatemoney generate-config apache-vhost.conf</code>+
  
-Créez un fichier vhost apache et collez-y le retour de la commande précédente+Créez un fichier de configuration Apache2 :
 <code bash>sudo nano /etc/apache2/sites-available/budget.nomdedomaine.conf</code> <code bash>sudo nano /etc/apache2/sites-available/budget.nomdedomaine.conf</code>
  
-Voici à quoi ressemble mon fichier vhost par exemple+Collez-y le retour de la commande précédente et complétez pour qu'il ressemble à ceci :
 <code apache> <code apache>
 <VirtualHost *:80> <VirtualHost *:80>
  
         ServerName budget.nomdedomaine.fr         ServerName budget.nomdedomaine.fr
-        ServerAdmin fate@nomdedomaine.fr +         
- +        Redirect / https://budget.nomdedomaine.fr/ 
-        <Location /> +        
-                Redirect / https://budget.nomdedomaine.fr/ +
-        </Location> +
 </VirtualHost> </VirtualHost>
- 
  
 <VirtualHost *:443> <VirtualHost *:443>
  
         ServerName budget.nomdedomaine.fr         ServerName budget.nomdedomaine.fr
-        ServerAdmin fate@nomdedomaine.fr 
  
-        WSGIDaemonProcess ihatemoney user=www-data group=www-data threads=5 python-home=/home/pi/ihatemoney +        WSGIDaemonProcess ihatemoney user=www-data group=www-data threads=5 python-home=/var/www/ihatemoney 
-        WSGIScriptAlias / /home/pi/ihatemoney/lib/python3.9/site-packages/ihatemoney/wsgi.py+        WSGIScriptAlias / /var/www/ihatemoney/lib/python3.9/site-packages/ihatemoney/wsgi.py
         WSGIPassAuthorization On         WSGIPassAuthorization On
  
Ligne 151: Ligne 147:
         ErrorLog ${APACHE_LOG_DIR}/budget.error.log         ErrorLog ${APACHE_LOG_DIR}/budget.error.log
  
-        <IfModule mod_ssl.c> +        SSLEngine on 
-                SSLEngine on +        SSLCertificateFile /etc/letsencrypt/live/nomdedomaine.fr/fullchain.pem 
-                SSLCertificateFile /etc/letsencrypt/live/nomdedomaine.fr/fullchain.pem +        SSLCertificateKeyFile /etc/letsencrypt/live/nomdedomaine.fr/privkey.pem
-                SSLCertificateKeyFile /etc/letsencrypt/live/nomdedomaine.fr/privkey.pem +
-        </IfModule>+
  
-        <Directory /home/pi/ihatemoney/lib/python3.9/site-packages/ihatemoney>+        <Directory /var/www/ihatemoney/lib/python3.9/site-packages/ihatemoney>
                 WSGIProcessGroup ihatemoney                 WSGIProcessGroup ihatemoney
                 WSGIApplicationGroup %{GLOBAL}                 WSGIApplicationGroup %{GLOBAL}
Ligne 163: Ligne 157:
         </Directory>         </Directory>
  
-        Alias /static/ /home/pi/ihatemoney/lib/python3.9/site-packages/ihatemoney/static/       +        Alias /static/ /var/www/ihatemoney/lib/python3.9/site-packages/ihatemoney/static/       
                  
 </VirtualHost> </VirtualHost>
- 
-# modern configuration, tweak to your needs 
-SSLProtocol             all -SSLv3 -TLSv1 -TLSv1.1 
-SSLCipherSuite          ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 
-SSLHonorCipherOrder     on 
-SSLCompression          off 
-SSLSessionTickets       off 
- 
-# OCSP Stapling, only in httpd 2.3.3 and later 
-SSLUseStapling          on 
-SSLStaplingResponderTimeout 5 
-SSLStaplingReturnResponderErrors off 
-SSLStaplingCache        shmcb:/var/run/ocsp(128000) 
  
 </code> </code>
Ligne 188: Ligne 169:
 <code bash>sudo systemctl restart apache2</code> <code bash>sudo systemctl restart apache2</code>
  
-I hate money est maintenant accessible depuis l'adresse configuré dans le vhost Apache.+I hate money est maintenant accessible depuis l'adresse configuré dans le vhost Apache. Si vous cliquez sur la roue crantée en bas à droite, après avoir rentré le mot de passe admin vous aurez accès à la zone d'administration. 
 + 
 +===== Mise à jour ===== 
 + 
 +Si vous voulez mettre à jour Ihatemoney dans le futur, il vous suffit de vous rendre dans le répertoire /var/www/ihatemoney puis d'activer l'environnement virtuel : 
 +<code bash>source bin/activate</code> 
 +puis de lancer : 
 +<code bash>pip install -U ihatemoney</code> 
  
  
  
  • serveur_hebergement/i_hate_money.1664790309.txt.gz
  • Dernière modification : 2023/08/08 14:01
  • (modification externe)