Aller au contenu

« Trace install tas - MediaWiki » : différence entre les versions

De Loic Wiki
Mise à jour configuration Quadlets pour automatisation
Alignement documentation runtime quadlets rootless + clarification Beszel
 
(2 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
== Configuration Podman Systemd (Quadlets) ==
= Trace install tas - MediaWiki =
Pour garantir le démarrage automatique et les mises à jour régulières, l'installation est passée d'un lancement manuel à l'utilisation des générateurs systemd de Podman (quadlets).


=== Réseau (`mediawiki.network`) ===
== Rôle ==
Fichier : `~/.config/containers/systemd/mediawiki.network`
Wiki collaboratif et base documentaire.
<syntaxhighlight lang="ini">
[Unit]
Description=MediaWiki Network


[Network]
== Accès ==
Label=app=mediawiki
* Local : http://10.8.0.1:8098
</syntaxhighlight>
* Public : https://lololand.hopto.org:25698


=== Base de données (`mediawiki-db.container`) ===
== Ports ==
Fichier : `~/.config/containers/systemd/mediawiki-db.container`
8098 local, 25698 public via Caddy
<syntaxhighlight lang="ini">
[Unit]
Description=MediaWiki Database
After=network-online.target
Wants=network-online.target


[Container]
== Exécution / runtime ==
Image=docker.io/library/mariadb:11.4
Quadlets rootless systemd user ; conteneurs mediawiki-app et mediawiki-db.
AutoUpdate=registry
Network=mediawiki.network
ContainerName=mediawiki-db
Volume=/home/loic/mediawiki/db:/var/lib/mysql:Z
Environment=MARIADB_ROOT_PASSWORD=bTxhx7Ntwu6TwQzUdpfyArPk
Environment=MARIADB_DATABASE=mediawiki
Environment=MARIADB_USER=mediawiki
Environment=MARIADB_PASSWORD=YcLJN5h9wjT65BLWemJL3LEu
Exec=--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --innodb-file-per-table=1


[Service]
Principe :
Restart=always
* `mediawiki-app` sert l'application wiki en HTTP sur le port local 8098
RestartSec=5
* `mediawiki-db` fournit la base MariaDB dédiée
* Caddy publie ensuite le service local vers le port public 25698


[Install]
== Chemins de configuration ==
WantedBy=default.target
* /home/loic/.config/containers/systemd/mediawiki-app.container
</syntaxhighlight>
* /home/loic/.config/containers/systemd/mediawiki-db.container
* /home/loic/mediawiki/.env
* /home/loic/mediawiki/app/LocalSettings.php
* /home/loic/mediawiki/docs/README.md
* /home/loic/mediawiki/compose.yaml (référence de reconstitution / rollback)


=== Application MediaWiki (`mediawiki-app.container`) ===
== Paramètres clés à documenter ==
Fichier : `~/.config/containers/systemd/mediawiki-app.container`
Les quadlets sont la source de vérité de lancement. Pour rester exploitable en maintenance, il faut considérer ces éléments comme prioritaires :
<syntaxhighlight lang="ini">
* image de `mediawiki-app`
[Unit]
* image de `mediawiki-db`
Description=MediaWiki Application
* variables d'environnement des quadlets et/ou de `.env`
After=network-online.target mediawiki-db.service
* ports publiés localement
Wants=network-online.target
* bind mounts ou volumes de l'application et de la base
Requires=mediawiki-db.service
* éventuelles extensions ou personnalisations chargées par `LocalSettings.php`


[Container]
== Volumes / persistance ==
Image=docker.io/library/mediawiki:latest
* ./app -> /var/www/html
AutoUpdate=registry
  * contient le code applicatif local, les extensions, `LocalSettings.php` et les données nécessaires côté MediaWiki
Network=mediawiki.network
* ./db -> /var/lib/mysql
ContainerName=mediawiki-app
  * contient les données MariaDB du wiki
Volume=/home/loic/mediawiki/app:/var/www/html:Z
Environment=PHP_MEMORY_LIMIT=256M
Environment=APACHE_RUN_USER=www-data
Environment=APACHE_RUN_GROUP=www-data
PublishPort=8098:80


[Service]
== Dépendances ==
Restart=always
* MariaDB dédiée (mediawiki-db)
RestartSec=5
* Caddy 25698 -> 8098


[Install]
== Procédure de relance / diagnostic ==
WantedBy=default.target
Relance standard :
</syntaxhighlight>
* `systemctl --user restart mediawiki-db.service mediawiki-app.service`
* `systemctl --user daemon-reload` après modification d'un quadlet


=== Fonctionnement ===
Vérifications utiles :
* **Démarrage automatique** : `systemctl --user daemon-reload` puis `systemctl --user enable --now mediawiki-app.service` (qui entraîne la BDD grâce à la directive `Requires`).
* vérifier que `mediawiki-app` écoute bien sur 8098 local
* **Mises à jour automatiques** : Via `podman-auto-update.timer` exécuté par systemd. Grâce aux options `AutoUpdate=registry`, les images `mariadb:11.4` et `mediawiki:latest` sont téléchargées et les conteneurs recréés si une nouvelle version est disponible.
* vérifier que `mediawiki-db` est sain avant de conclure à une panne applicative
* tester l'accès local avant l'accès public
* revalider `LocalSettings.php` après toute restauration
 
Le fichier `compose.yaml` reste utile comme référence, mais il ne faut plus le présenter comme méthode d'exploitation primaire tant que les quadlets restent le runtime actif.
 
== Remarques ==
Le wiki héberge la documentation d'installation, la trace logicielle et les intégrations Mermaid / PlantUML / BPMN JS.
Beszel n'est pas une dépendance applicative de MediaWiki. L'impact côté MediaWiki est documentaire : mise à jour de la trace serveur et des pages concernées.
 
== Données / emplacements à sauvegarder ==
* Données wiki : /home/loic/mediawiki/app
* Base : /home/loic/mediawiki/db
* Variables : /home/loic/mediawiki/.env
* Documentation locale : /home/loic/mediawiki/docs
 
== Sauvegarde ==
* Sauvegarder /home/loic/mediawiki/app, /home/loic/mediawiki/.env et /home/loic/mediawiki/docs.
* Sauvegarder la base MariaDB via dump ou en copiant /home/loic/mediawiki/db après arrêt propre.
* Si une extension ou un réglage Caddy change, inclure aussi les fichiers de configuration modifiés dans la sauvegarde documentaire.
 
== Restauration ==
* Restaurer /home/loic/mediawiki/app, /home/loic/mediawiki/.env et /home/loic/mediawiki/db.
* Relancer d'abord `mediawiki-db.service`, puis `mediawiki-app.service`, puis vérifier `LocalSettings.php`, la connexion à la base et l'accès wiki local/public.
* Après restauration, revalider les extensions chargées et les éventuels chemins personnalisés.
 
== Maintenance documentaire ==
Lors d'un ajout d'extensions, d'un changement de quadlet, de variables .env, d'images, de ports, de Caddy ou de structure documentaire, mettre à jour cette page et les pages de documentation associées.
 
== Trace documentaire ==
Cette page fait partie de [[Trace install tas]].

Dernière version du 13 juin 2026 à 22:26

Trace install tas - MediaWiki

Rôle

Wiki collaboratif et base documentaire.

Accès

Ports

8098 local, 25698 public via Caddy

Exécution / runtime

Quadlets rootless systemd user ; conteneurs mediawiki-app et mediawiki-db.

Principe :

  • `mediawiki-app` sert l'application wiki en HTTP sur le port local 8098
  • `mediawiki-db` fournit la base MariaDB dédiée
  • Caddy publie ensuite le service local vers le port public 25698

Chemins de configuration

  • /home/loic/.config/containers/systemd/mediawiki-app.container
  • /home/loic/.config/containers/systemd/mediawiki-db.container
  • /home/loic/mediawiki/.env
  • /home/loic/mediawiki/app/LocalSettings.php
  • /home/loic/mediawiki/docs/README.md
  • /home/loic/mediawiki/compose.yaml (référence de reconstitution / rollback)

Paramètres clés à documenter

Les quadlets sont la source de vérité de lancement. Pour rester exploitable en maintenance, il faut considérer ces éléments comme prioritaires :

  • image de `mediawiki-app`
  • image de `mediawiki-db`
  • variables d'environnement des quadlets et/ou de `.env`
  • ports publiés localement
  • bind mounts ou volumes de l'application et de la base
  • éventuelles extensions ou personnalisations chargées par `LocalSettings.php`

Volumes / persistance

  • ./app -> /var/www/html
 * contient le code applicatif local, les extensions, `LocalSettings.php` et les données nécessaires côté MediaWiki
  • ./db -> /var/lib/mysql
 * contient les données MariaDB du wiki

Dépendances

  • MariaDB dédiée (mediawiki-db)
  • Caddy 25698 -> 8098

Procédure de relance / diagnostic

Relance standard :

  • `systemctl --user restart mediawiki-db.service mediawiki-app.service`
  • `systemctl --user daemon-reload` après modification d'un quadlet

Vérifications utiles :

  • vérifier que `mediawiki-app` écoute bien sur 8098 local
  • vérifier que `mediawiki-db` est sain avant de conclure à une panne applicative
  • tester l'accès local avant l'accès public
  • revalider `LocalSettings.php` après toute restauration

Le fichier `compose.yaml` reste utile comme référence, mais il ne faut plus le présenter comme méthode d'exploitation primaire tant que les quadlets restent le runtime actif.

Remarques

Le wiki héberge la documentation d'installation, la trace logicielle et les intégrations Mermaid / PlantUML / BPMN JS. Beszel n'est pas une dépendance applicative de MediaWiki. L'impact côté MediaWiki est documentaire : mise à jour de la trace serveur et des pages concernées.

Données / emplacements à sauvegarder

  • Données wiki : /home/loic/mediawiki/app
  • Base : /home/loic/mediawiki/db
  • Variables : /home/loic/mediawiki/.env
  • Documentation locale : /home/loic/mediawiki/docs

Sauvegarde

  • Sauvegarder /home/loic/mediawiki/app, /home/loic/mediawiki/.env et /home/loic/mediawiki/docs.
  • Sauvegarder la base MariaDB via dump ou en copiant /home/loic/mediawiki/db après arrêt propre.
  • Si une extension ou un réglage Caddy change, inclure aussi les fichiers de configuration modifiés dans la sauvegarde documentaire.

Restauration

  • Restaurer /home/loic/mediawiki/app, /home/loic/mediawiki/.env et /home/loic/mediawiki/db.
  • Relancer d'abord `mediawiki-db.service`, puis `mediawiki-app.service`, puis vérifier `LocalSettings.php`, la connexion à la base et l'accès wiki local/public.
  • Après restauration, revalider les extensions chargées et les éventuels chemins personnalisés.

Maintenance documentaire

Lors d'un ajout d'extensions, d'un changement de quadlet, de variables .env, d'images, de ports, de Caddy ou de structure documentaire, mettre à jour cette page et les pages de documentation associées.

Trace documentaire

Cette page fait partie de Trace install tas.