monpremierwiki pour https://wiki.chapril.org/!monpremierwiki.Cette documentation explique comment installer un service, en l’occurrence le wiki, sur une nouvelle machine virtuelle de l'infrastructure du Chapril. Ce service fait partie d'un ensemble de services du Chapril. Une partie de sa mise en place est donc similaire aux autres services. Même si l'ensemble de la procédure est traitée, c'est la partie plus spécifique à ce service qui sera la plus détaillée. Par exemple, la création d'une machine virtuelle renvoie sur une autre page et n'est pas détaillée ici. Cette documentation est technique mais se veut accessible avec de bonnes connaissances notamment en ce qui concerne la ligne de commande. Elle est suivie d'une documentation concernant l'utilisation, la modération et l'animation.
Ce service de wiki est basé sur Dokuwiki avec l'extension ferme de wikis (farmer en Anglais), tous deux distribués sous licence GNU General Public License Version 2.
Les wikis seront publics ou privés au choix.
La demande de création d'un nouveau wiki se fait par demande à la liste support à l’adresse wiki-support@chapril.org.
Il faut alors :
Retrouvez la page de présentation du service sur le site www.chapril.org : www.chapril.org/-services-.html.
Site principal DokuWiki : www.dokuwiki.org
Téléchargement DokuWiki : download.dokuwiki.org
Sources DokuWiki : github.com/dokuwiki/dokuwiki
Page de l'extension Farmer : www.dokuwiki.org/plugin:farmer
Source de l'extension Farmer : github.com/cosmocode/dokuwiki-plugin-farmer
Machine virtuelle Chapril pour ce service : wiki.cluster.chapril.org
Page principale du service wiki Chapril: wiki.chapril.org
Exemple d'animal de la ferme : wiki.chapril.org/!monpremierwiki
Le serveur Web est Apache 2.
Il n'y pas de base de données installée. Cependant une extension de DokuWiki permet d'en ajouter une. Cela permettrait d'avoir des données structurées.
L'application principale permet de gérer les extensions de wikis de la ferme de deux manières possibles :
Le thème proposé est le thème par défaut de DokuWiki. Les couleurs sont modifiables dans chaque wiki.
Il n'est pas possible de changer de thème sans en faire la demande. Il faut alors intégrer les fichiers du nouveau thème dans le dossier de l'animal.
L'administrateur d'un wiki gère les utilisateurs de son wiki mais pas les extensions qui, elles, sont gérées au niveau du fermier.
Création de la VM avec la procédure Création d'une machine virtuelle « bling ».
Les commandes d'installation d'Apache 2 et des modules nécessaires :
apt install apache2 php libapache2-mod-php apt install php-curl php-gd php-intl php-json php-mbstring php-xml php-zip
Création d'un volume logique donnees_utilisateurs avec LVM :
lvcreate -n donnees_utilisateurs -L 10g vgmain
Ce volume est formaté en ext4 :
mkfs -t ext4 /dev/vgmain/donnees_utilisateurs
Création du répertoire de montage wiki_utilisateurs/ et modification du fichier /etc/fstab pour le montage automatique du répertoire :
mkdir -p /var/www/wiki.chapril.org/wiki_utilisateurs vim /etc/fstab
/dev/mapper/vgmain-donnees_utilisateurs /var/www/wiki.chapril.org/wiki_utilisateurs ext4 defaults 0 2
Enfin montage manuel :
mount -a
Cette autre procédure de montage est obsolète :
mkdir /srv/wiki_utilisateurs vim /etc/fstab
/dev/mapper/vgmain-donnees_utilisateurs /srv/wiki_utilisateurs ext4 defaults 0 2
mount -a
Vérification de ce qui a été fait précédemment :
lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert donnees_utilisateurs vgmain -wi-ao---- 10,00g rootfs vgmain -wi-ao---- <4,66g swap vgmain -wi-ao---- <1,86g tmp vgmain -wi-ao---- 284,00m var vgmain -wi-ao---- <1,86g
mount |grep dev/mapper
/dev/mapper/vgmain-rootfs on / type ext4 (rw,relatime,errors=remount-ro) /dev/mapper/vgmain-donnees_utilisateurs on /var/www/wiki.chapril.org/wiki_utilisateurs type ext4 (rw,relatime) /dev/mapper/vgmain-tmp on /tmp type ext4 (rw,relatime) /dev/mapper/vgmain-var on /var type ext4 (rw,relatime)
Création d'un hôte virtuel en créant le fichier /etc/apache2/sites-available/wiki.chapril.org.conf.
Puis édition de ce fichier avec pour contenu ci-dessous :
<VirtualHost *:80> ServerName wiki.chapril.org DocumentRoot "/var/www/wiki.chapril.org/public_html" <Directory "/var/www/wiki.chapril.org/public_html"> Options +FollowSymLinks AllowOverride all Require all granted </Directory> CustomLog /var/log/apache2/wiki.chapril.org/wiki.chapril.org-access.log combined ErrorLog /var/log/apache2/wiki.chapril.org/wiki.chapril.org-error.log </VirtualHost>
Activation du site :
a2ensite wiki.chapril.org
On recharge ensuite la configuration d'Apache :
systemctl reload apache2
On configure pour afficher l’adresse IP des visiteurs dans les logs d’Apache dans la VM.
D’abord on crée le fichier /etc/apache2/conf-available/reverse-proxy.conf.
On l’édite comme suit :
<IfModule !remoteip_module> LoadModule remoteip_module /usr/lib/apache2/modules/mod_remoteip.so </IfModule> <IfModule remoteip_module> RemoteIPHeader X-Forwarded-For RemoteIPInternalProxy 192.168.1.93 2a01:4f8:10b:c42::93 2a01:4f8:10b:c41::93 LogFormat "%a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined-proxy </IfModule>
On active la configuration :
a2enconf reverse-proxy
Cela va créer un lien symbolique dans /etc/apache2/conf-enabled/.
On réutilise combined-proxy dans le fichier de configuration du site.
On édite /etc/apache2/sites-enabled/wiki.chapril.org.conf :
<VirtualHost *:80> ServerName xxx.chapril.org ServerAdmin xxx-support@chapril.org ErrorLog ${APACHE_LOG_DIR}/xxx.chapril.org/xxx.chapril.org-error.log CustomLog ${APACHE_LOG_DIR}/xxx.chapril.org/xxx.chapril.org-access.log combined-proxy
Le répertoire /var/www/wiki.chapril.org/ contiendra tous les fichiers pour DokuWiki (application, configuration et données).
Récupération et extraction des fichiers de l'application Dokuwiki sur le site officiel, extraction et copie des fichiers dans le dossier wiki_admin qui contient l'application (mais ne contiendra pas les données des utilisateurs) :
On récupère et extrait les fichiers de l’application DokuWiki depuis le site officiel.
On extrait de l’archive puis copie ces fichiers dans le répertoire wiki_admin/ :
wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz tar -xzvf dokuwiki-stable.tgz 'cp' -af dokuwiki-xxxx-xx-xx/* /var/www/wiki.chapril.org/version/chapril-wiki-20xx-xx-xx
Ce dernier contiendra l’application sans les données des utilisateurs.
On crée le répertoire /var/www/wiki.chapril.org/wiki_utilisateurs/ pour les animaux :
mkdir /var/www/wiki.chapril.org/wiki_utilisateurs
Il contiendra les données des utilisateurs.
Pour l'installation de l'extension farmer, on peut utiliser l'interface d'administration.
Il suffit de rechercher l'extension farmer puis de l'installer.
Pour la méthode manuelle, les fichier de l'extension farmer sont à télécharger depuis www.dokuwiki.org/plugin:farmer et à placer dans le répertoire lib/plugins/farmer/2).
Une fois l'extension installée, un nouveau menu permet la gestion des animaux.
La mise en place de la bannière se fait dans l'application Dokuwiki, dans un thème nommé chapril.
Les fichiers à récupérer sont :
header.html ;chapril-banner-logo.png ;chapril-banner.css.On les trouve dans le site Web démonstratif banner.chapril.org.
On crée un nouveau thème à partir du thème starter.
Ensuite, la mise en place de la bannière du Chapril se fait en déposant les fichiers dans le répertoire du thème chapril, soit /var/www/wiki.chapril.org/public_html/lib/tpl/.
TODO
Pour construire la page d’accueil du service Wiki du Chapril demander la création d'un wiki.
Écrire un courriel à wiki-support@chapril.org et préciser :
monwiki ;Redmine permet de créer un rapport mensuel. On indique dans un fichier de configuration le serveur et l'ID à utiliser :
cat /etc/wiki.chapril.org/wikichaprilorg.conf
REDMINE_BASE_URL="https://agir.april.org" REDMINE_TICKET_ID=6399
Les sources se trouvent dans un dépôt de la forge de l'April : https://forge.april.org/Chapril/wiki.chapril.org-tools.
Ce dépôt est cloné sur la VM et se place dans /srv/wiki.chapril.org/tools/.
Un lien symbolique permet de passer d'un version à une autre. En cas d'échec, il est facile de revenir en arrière.
Exemple de création d'un lien symbolique :
ln -s /var/www/wiki.chapril.org/versions/chapril-wiki-20xx-xx-xx/ public_html
Vérification :
ls -l
public_html -> /var/www/wiki.chapril.org/versions/chapril-wiki-20xx-xx-xx/
Page pour mettre à niveau : www.dokuwiki.org/install:upgrade.
On duplique le répertoire de la version antérieure dans un répertoire portant le numéro de la nouvelle version.
Exemple :
cp -Ra chapril-wiki-2024-02-06a/ chapril-wiki-2024-02-06b/
Récupérer et extraire l'archive de la version courante :
cd ~/ wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz tar zxvf dokuwiki-stable.tgz
Copier les fichiers de la nouvelle version sur le répertoire dupliqué de l'ancienne version3) :
\cp -af dokuwiki-xxxx-xx-xx/* /var/www/wiki.chapril.org/versions/chapril-wiki-xxxx-xx-xx/
Mettre à jour le propriétaire de tous les fichiers avec www-data :
chown -R www-data:www-data /var/www/wiki.chapril.org/versions/chapril-wiki-xxxx-xx-xx/
Si nécessaire, mettre à jour l’extension farmer en utilisant l'interface d’administration.
Tester la nouvelle version en changeant le lien symbolique :
rm public_html ln -s /var/www/wiki.chapril.org/versions/chapril-wiki-20xx-xx-xx/ public_html
TODO
TODO
Pour créer un compte, on peut le faire dans l'interface en ligne. Se connecter en tant qu'administrateur sur l'instance principale, soit wiki.chapril.org. Se connecter en administrateur du wiki puis suivre le chemin suivant :
administrer > Extensions supplémentaires - Élevage > Ajouter un animal
Maintenant, donner un nom et choisir le type de wiki : ouvert, public ou fermé. Choisir “copier d'un animal existant” avec comme choix dans le menu déroulant “mon premier wiki”
Le lien symbolique permet de suspendre facilement un animal. Pour cela on supprime le lien symbolique sans toucher au répertoire.
Renommage puis déplacement du répertoire :
mv monpremierwiki/ monpremierwiki_01 mv monpremierwiki_01 2024/
Création du lien :
ln -s année_nom _numéro/ nom
Exemple :
ln -s 2024/monpremierwiki_01/ monpremierwiki
Suppression du lien. Cela permet de désactiver un site sans effacer les données :
rm monpremierwiki
Pour supprimer un compte, on peut le faire dans l'interface en ligne. Se connecter en tant qu'administrateur sur l'instance principale, puis :
administrer > Extensions supplémentaires - Élevage > Supprimer un animal
Choisir l'animal dans la liste, saisir le nom de l'animal manuellement pour confirmer. Cliquer sur le bouton Détruire l'animal et toutes ses données.
Le courriel du service Wiki du Chapril est wiki-support@chapril.org.
Parfois, des utilisateurs écrivent à cette adresse. Voici un plan de traitement.
L’expéditeur doit :
@april.org, c'est l'idéal ;wiki-support@chapril.org ;Modèle du courriel de réponse :
Bonjour Ada, Je suis xxx, l'animateur bénévole du service wiki.chapril.org. Nous sommes heureux que nos services numériques libres, éthiques et loyaux puissent vous être utiles. Normalement vous devriez avoir reçu un message de création de compte avec un nom d'utilisateur et un mot de passe. [réponse complémentaire à la demande ou autre réponse] En vous souhaitant, au nom de toute l'équipe du Chapril, un agréable usage de nos services libres, éthiques et loyaux. Librement, Claver
Un ticket a :
copiercollerlesujetducourrielavecescrochets ;Extrait de courriel anonyme :
Le xx/xx/20xx, Ada B. a écrit sur wiki-support@chapril.org :
Bonjour,
[...]
Partager sur chapril@ si le sujet est pertinent.
Par exemple, en cas de remerciements, ça fera toujours plaisir à l'équipe.
VM : Vitual Machine ou machine virtuelle.
LVM : Logical Volume Management ou gestion par volumes logiques.