Artifact ID: | 3bd29d963393047a122a6772cbc9ede67d38442de74fd639a4ac112b18669e90 |
---|---|
Page Name: | Multi-sites |
Date: | 2023-01-07 22:13:23 |
Original User: | bohwaz |
Mimetype: | text/x-markdown |
Parent: | bcd3c3c753b28b6f3d3b06d6b7cec3280979fb71c6d8643b94b8f617d87fab06 (diff) |
Next | 03c94831a528299ce49cbe4766d522ce491564e8a0153a2ad8a6bf13e39eb201 |
Installation multi-sites (ferme ou usine à Paheko)
Il est possible assez facilement de personnaliser l'installation de Paheko pour héberger plusieurs associations avec le même code, permettant de n'avoir qu'une seule copie du code à mettre à jour. C'est comme ça que fonctionne le service https://paheko.cloud/, ainsi que les instances chez Zourit ou KAZ.bzh par exemple.
Pour mettre en place ce fonctionnement il faut jouer avec la constante DATA_ROOT
dans le fichier config.local.php
.
Exemple clé en main
Voici un exemple clé en main d'installation de Paheko permettant d'héberger quelques associations (plusieurs dizaines).
Pré-requis : il est conseillé d'avoir un utilisateur
- Télécharger et décompresser l'archive Paheko dans un répertoire, par exemple
/var/www/paheko
(ne pas procéder au reste de l'installation) - Faire pointer les sous-domaines (ou un wild-card) des associations vers ce répertoire où a été placé le code de Paheko (sans procéder à l'installation).
- Télécharger le fichier
config.local.php
, modifier les constantesFACTORY_DOMAIN
,MAIL_ERRORS
etSECRET_KEY
(et éventuellementFACTORY_USER_DIRECTORY
si désiré), et le recopier dans le répertoire racine de l'installation de Paheko
Chaque instance (association) stockera ses données dans un sous-répertoire du répertoire indiqué dans FACTORY_USER_DIRECTORY
.
Pour créer une nouvelle instance il suffit de créer son répertoire : mkdir /var/www/paheko/users/club-de-tennis
par exemple.
Dans le cas contraire une erreur indiquant "cette association n'existe pas" s'affichera.
Une fois le répertoire créé il suffit de se rendre à l'adresse de l'installation pour configurer l'association (ici club-de-tennis.monsite.tld
).
Cron / tâches planifiées
Il est recommandé de suivre également les étapes suivantes pour activer les tâches planifiées (sauvegarde automatisée, envoi de rappels automatiques, envoi des e-mails).
- Télécharger les fichiers
factory_cron.sh
etfactory_cron_emails.sh
et les recopier dans le répertoire racine de l'installation de Paheko, et les rendre exécutable (chmod +x factory_cron_*.sh
) - Configurer une tâche cron, par exemple avec
crontab -e -u paheko
, comme ceci : ``` @daily /var/www/paheko/factory_cron.sh - * * * * /var/www/paheko/factory_cron_emails.sh ```
Le premier script est exécuté chaque jour et lance les sauvegardes automatiques et les rappels de cotisations, quand le second envoie les e-mails en attente.
Mises à jour
Il est possible de mettre à jour le code de Paheko, chaque instance sera mise à jour automatiquement lors de la prochaine visite.
Gestion du code
Plutôt que d'utiliser l'archive du site Paheko, il est recommandé de réaliser une installation à partir de Fossil, ce qui permettra des mises à jour simplifiées :
Pour installer la version 1.1.0 :
cd /var/www
fossil clone https://fossil.kd2.org/paheko/ paheko.fossil
mkdir paheko
cd paheko
fossil open ../paheko.fossil
fossil update 1.1.0
cd src
make deps
Ensuite à la mise à jour vers la version 1.1.2 par exemple :
cd /var/www/paheko/src
fossil update 1.1.2
make deps
Support
Si vous avez besoin de plus d'aide pour mettre en place un tel service vous pouvez contacter les développeurs sur la liste dev@