Aller au contenu

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

De Loic Wiki
Phase 3 : sauvegarde, restauration et persistance
Mise à jour configuration Quadlets pour automatisation
Ligne 1 : Ligne 1 :
= Trace install tas - MediaWiki =
== Configuration Podman Systemd (Quadlets) ==
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ôle ==
=== Réseau (`mediawiki.network`) ===
Wiki collaboratif et base documentaire.
Fichier : `~/.config/containers/systemd/mediawiki.network`
<syntaxhighlight lang="ini">
[Unit]
Description=MediaWiki Network


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


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


== Exécution / runtime ==
[Container]
Stack compose dans /home/loic/mediawiki ; conteneurs mediawiki-app et mediawiki-db
Image=docker.io/library/mariadb:11.4
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


== Chemins de configuration ==
[Service]
* /home/loic/mediawiki/compose.yaml
Restart=always
* /home/loic/mediawiki/.env
RestartSec=5
* /home/loic/mediawiki/app/LocalSettings.php
* /home/loic/mediawiki/docs/README.md


== Volumes / persistance ==
[Install]
* ./app -> /var/www/html
WantedBy=default.target
* ./db -> /var/lib/mysql
</syntaxhighlight>


== Dépendances ==
=== Application MediaWiki (`mediawiki-app.container`) ===
* MariaDB dédiée (mediawiki-db)
Fichier : `~/.config/containers/systemd/mediawiki-app.container`
* Caddy 25698 -> 8098
<syntaxhighlight lang="ini">
[Unit]
Description=MediaWiki Application
After=network-online.target mediawiki-db.service
Wants=network-online.target
Requires=mediawiki-db.service


== Remarques ==
[Container]
Le wiki héberge la documentation d'installation, la trace logicielle et les intégrations Mermaid / PlantUML / BPMN JS.
Image=docker.io/library/mediawiki:latest
AutoUpdate=registry
Network=mediawiki.network
ContainerName=mediawiki-app
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]
Restart=always
RestartSec=5


== Données / emplacements à sauvegarder ==
[Install]
* Données wiki : /home/loic/mediawiki/app
WantedBy=default.target
* Base : /home/loic/mediawiki/db
</syntaxhighlight>


== Sauvegarde ==
=== Fonctionnement ===
* Sauvegarder /home/loic/mediawiki/app, /home/loic/mediawiki/.env et /home/loic/mediawiki/docs.
* **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`).
* Sauvegarder la base MariaDB via dump ou en copiant /home/loic/mediawiki/db après arrêt propre.
* **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.
 
== Restauration ==
* Restaurer /home/loic/mediawiki/app, /home/loic/mediawiki/.env et /home/loic/mediawiki/db.
* Relancer la stack compose puis vérifier LocalSettings.php et l'accès wiki.
 
== Maintenance documentaire ==
Lors d'un ajout d'extensions, d'un changement de compose, de variables .env, 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]].

Version du 21 mars 2026 à 19:40

Configuration Podman Systemd (Quadlets)

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`)

Fichier : `~/.config/containers/systemd/mediawiki.network`

[Unit]
Description=MediaWiki Network

[Network]
Label=app=mediawiki

Base de données (`mediawiki-db.container`)

Fichier : `~/.config/containers/systemd/mediawiki-db.container`

[Unit]
Description=MediaWiki Database
After=network-online.target
Wants=network-online.target

[Container]
Image=docker.io/library/mariadb:11.4
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]
Restart=always
RestartSec=5

[Install]
WantedBy=default.target

Application MediaWiki (`mediawiki-app.container`)

Fichier : `~/.config/containers/systemd/mediawiki-app.container`

[Unit]
Description=MediaWiki Application
After=network-online.target mediawiki-db.service
Wants=network-online.target
Requires=mediawiki-db.service

[Container]
Image=docker.io/library/mediawiki:latest
AutoUpdate=registry
Network=mediawiki.network
ContainerName=mediawiki-app
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]
Restart=always
RestartSec=5

[Install]
WantedBy=default.target

Fonctionnement

  • **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`).
  • **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.