admin:services:mobilizon.chapril.org
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
admin:services:mobilizon.chapril.org [2022/11/06 16:42] – Minor fix on dokuwiki formatting syntax pitchum | admin:services:mobilizon.chapril.org [2023/01/07 17:54] (Version actuelle) – Lancement local du serveur sagotgej | ||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
{{https:// | {{https:// | ||
+ | |||
+ | <nspages .: | ||
====== Ressources ====== | ====== Ressources ====== | ||
Ligne 18: | Ligne 20: | ||
* Dépot upstream: https:// | * Dépot upstream: https:// | ||
- | ====== | + | ====== |
- | ====== Installation | + | |
- | Cette page concerne | + | <note warning> |
- | Copiée | + | **En travaux** La documentation de l' |
+ | [[admin: | ||
+ | </ | ||
+ | |||
+ | L' | ||
+ | |||
+ | ===== Pré-requis | ||
+ | |||
+ | - Mobilizon doit être installé sur la VM Debian nommée **biliz.cluster.chapril.org** sur laquelle on dispose de l' | ||
+ | - Le domaine choisi pour le service Mobilizon est [[https:// | ||
+ | - L' | ||
+ | |||
+ | ===== Installation | ||
+ | |||
+ | L' | ||
+ | |||
+ | Il a été décidé de **compiler le projet en local** (sur votre machine) avant de publier les binaires en production. | ||
+ | |||
+ | ==== Elixir | ||
+ | |||
+ | Mobilizon utilise le [[https:// | ||
+ | |||
+ | Installons la dernière version de Elixir (1.14.1) depuis la source sur notre machine locale: | ||
+ | |||
+ | sudo apt install erlang build-essential curl unzip openssl git cmake file | ||
+ | wget https:// | ||
+ | tar zxf elixir-1.14.1.tar.gz | ||
+ | cd elixir-1.14.1 | ||
+ | make -j$(nproc --ignore=1) | ||
+ | sudo make install | ||
+ | |||
+ | <note tip> | ||
+ | Si wget n'est pas déjà installé sur votre machine: | ||
+ | |||
+ | sudo apt install wget | ||
+ | </ | ||
+ | |||
+ | ==== NodeJS ==== | ||
+ | |||
+ | La version 14 de NodeJS est requise. La version 12 est disponible dans Debian 11, c'est pourquoi nous allons installer la version LTS [[https:// | ||
+ | |||
+ | wget https:// | ||
+ | sudo tar --directory=/ | ||
+ | |||
+ | === Yarn === | ||
+ | Mobilizon | ||
+ | |||
+ | npm install -g yarn | ||
+ | |||
+ | ==== PostgreSQL ==== | ||
+ | |||
+ | PostgreSQL n'est pas requis pour la compilation de Mobilizon, mais avoir une base de données en local permet de tester l' | ||
+ | |||
+ | L' | ||
+ | |||
+ | sudo apt install postgresql postgresql-contrib | ||
+ | sudo apt install --install-recommends postgis | ||
+ | sudo systemctl start postgresql | ||
+ | |||
+ | ===== Compilation locale de Mobilizon ===== | ||
+ | |||
+ | Maintenant que nous avons installé localement toutes les dépendances, | ||
+ | |||
+ | ==== Récupération du code source ==== | ||
+ | |||
+ | <note important> | ||
+ | </ | ||
+ | |||
+ | git clone https:// | ||
+ | cd mobilizon | ||
+ | git checkout 3.0.3 | ||
+ | |||
+ | |||
+ | ==== Compilation du serveur ==== | ||
+ | |||
+ | <note tip> | ||
+ | Lors du téléchargement des dépendances Elixir, mix va vous demander si vous souhaitez installer Hex et Rebar3. Répondez oui :-) | ||
+ | </ | ||
+ | |||
+ | # Téléchargement des dépendances Elixir du projet | ||
+ | mix deps.get | ||
+ | # Compilation du serveur Mobilizon | ||
+ | MIX_ENV=prod mix compile | ||
+ | |||
+ | ==== Compilation du client ==== | ||
+ | |||
+ | Nous allons nous rendre dans le répertoire js/ (situé dans le dossier du dépôt mobilizon clôné précédemment) pour installer les dépendances et compiler le client web | ||
+ | |||
+ | cd js | ||
+ | yarn install | ||
+ | yarn run build | ||
+ | cd .. | ||
+ | |||
+ | ==== Test local de l' | ||
+ | |||
+ | Pour tester l' | ||
+ | |||
+ | |||
+ | === Installation de PostgreSQL === | ||
+ | |||
+ | sudo apt install postgresql postgresql-contrib | ||
+ | sudo apt install --install-recommends postgis | ||
+ | sudo systemctl --now enable postgresql | ||
+ | |||
+ | === Génération de la configuration locale de Mobilizon === | ||
+ | |||
+ | Commençons par générer la configuration locale avec le CLI de Mobilizon: | ||
+ | |||
+ | MIX_ENV=prod mix mobilizon.instance gen | ||
+ | |||
+ | Indiquez '' | ||
+ | |||
+ | Cette commande a généré deux fichiers. Le premier, '' | ||
+ | |||
+ | Le second fichier, '' | ||
+ | |||
+ | === Création de l' | ||
+ | |||
+ | Lancer le script SQL généré lors de l' | ||
+ | |||
+ | sudo -u postgres psql -f setup_db.psql | ||
+ | |||
+ | === Initialisation de la base de données Mobilizion === | ||
+ | |||
+ | Il faut maintenant initialiser le schéma de la base de données avec la commande suivante: | ||
+ | |||
+ | MIX_ENV=prod mix ecto.migrate | ||
+ | |||
+ | === Lancement du serveur === | ||
+ | |||
+ | Tout est prêt pour pouvoir lancer localement le serveur localement: | ||
+ | |||
+ | MIX_ENV=prod mix phx.server | ||
- | Mobilizon est installée sur la VM Debian nommée **biliz.cluster.chapril.org** | + | Voici ce que vous devriez obtenir en ouvrant le site web '' |
- | == Pré-requis == | + | {{: |
- | - Une machine Linux avec accès root | + | On a maintenant vérifié localement que tout fonctionne. Il faut dorénavant pousser le logiciel compilé vers le serveur |
- | - Un nom de domaine (ou sous-domaine) pour le serveur | + | |
- | - Un serveur SMTP pour l' | + | |
- | == Dépendances == | + | <note warning> |
Mobilizon nécessite entre autres Elixir, NodeJS et PostgreSQL. Préférez installer Elixir et NodeJS à partir de leurs | Mobilizon nécessite entre autres Elixir, NodeJS et PostgreSQL. Préférez installer Elixir et NodeJS à partir de leurs | ||
Ligne 114: | Ligne 246: | ||
Revenons à notre utilisateur de Mobilizon : | Revenons à notre utilisateur de Mobilizon : | ||
- | sudo -i -u Mobilizon | + | sudo -i -u mobilizon |
<note important> | <note important> | ||
Ligne 172: | Ligne 304: | ||
Connectez-vous à nouveau en tant qu' | Connectez-vous à nouveau en tant qu' | ||
- | sudo -i -u Mobilizon | + | sudo -i -u mobilizon |
Créer un nouvel utilisateur pour administrer votre instance Mobilizon : | Créer un nouvel utilisateur pour administrer votre instance Mobilizon : | ||
Ligne 213: | Ligne 345: | ||
====== Mise à jour de la version Chapril Mobilizon ====== | ====== Mise à jour de la version Chapril Mobilizon ====== | ||
+ | |||
+ | <note warning> | ||
+ | **TODO** Section à déplacer et fusionner dans la page | ||
+ | [[admin: | ||
+ | </ | ||
Pour fusionner les avancées de l' | Pour fusionner les avancées de l' | ||
Ligne 302: | Ligne 439: | ||
====== Personnaliser Mobilizon ====== | ====== Personnaliser Mobilizon ====== | ||
+ | |||
+ | <note warning> | ||
+ | **TODO** Section à déplacer et fusionner dans la page [[admin: | ||
+ | </ | ||
===== Avancement ===== | ===== Avancement ===== | ||
==== Choses faites ==== | ==== Choses faites ==== | ||
Ligne 391: | Ligne 532: | ||
l' | l' | ||
anniversaire familial ou la sortie entre amis à la grande manifestation internationale, | anniversaire familial ou la sortie entre amis à la grande manifestation internationale, | ||
- | réaliser vos rassemblements comme vous le souhaitez tout en préservant la confidentialité des participant-e-s. | + | réaliser vos rassemblements comme vous le souhaitez tout en préservant la confidentialité des participants. |
Le code source du projet Mobilizon.chapril.org est disponible à l’adresse https:// | Le code source du projet Mobilizon.chapril.org est disponible à l’adresse https:// |
admin/services/mobilizon.chapril.org.txt · Dernière modification : 2023/01/07 17:54 de sagotgej