Aller au contenu

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

De Loic Wiki
Mise à jour configuration Quadlets pour automatisation
Restauration + ajout configuration Quadlets systemd 2026-03-21
Ligne 1 : Ligne 1 :
= Trace install tas - MediaWiki =
== Rôle ==
Wiki collaboratif et base documentaire.
== Accès ==
* Local : http://10.8.0.1:8098
* Public : https://lololand.hopto.org:25698
== Ports ==
8098 local, 25698 public via Caddy
== Exécution / runtime ==
Depuis le 2026-03-21 : conteneurs gérés par systemd via les quadlets Podman (fichiers .container).
Données dans /home/loic/mediawiki/app et /home/loic/mediawiki/db.
== Chemins de configuration ==
* /home/loic/.config/containers/systemd/mediawiki-app.container
* /home/loic/.config/containers/systemd/mediawiki-db.container
* /home/loic/.config/containers/systemd/mediawiki.network
* /home/loic/mediawiki/app/LocalSettings.php
== Volumes / persistance ==
* /home/loic/mediawiki/app -> /var/www/html
* /home/loic/mediawiki/db  -> /var/lib/mysql
== Dépendances ==
* MariaDB dédiée (mediawiki-db)
* Caddy 25698 -> 8098
== Configuration Podman Systemd (Quadlets) ==
== 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).
Depuis le 2026-03-21, les conteneurs sont gérés par systemd via les quadlets Podman pour assurer le démarrage automatique et les mises à jour.


=== Réseau (`mediawiki.network`) ===
=== Réseau (`mediawiki.network`) ===
Fichier : `~/.config/containers/systemd/mediawiki.network`
<syntaxhighlight lang="ini">
<syntaxhighlight lang="ini">
[Unit]
[Unit]
Ligne 13 : Ligne 42 :


=== Base de données (`mediawiki-db.container`) ===
=== Base de données (`mediawiki-db.container`) ===
Fichier : `~/.config/containers/systemd/mediawiki-db.container`
<syntaxhighlight lang="ini">
<syntaxhighlight lang="ini">
[Unit]
[Unit]
Ligne 26 : Ligne 54 :
ContainerName=mediawiki-db
ContainerName=mediawiki-db
Volume=/home/loic/mediawiki/db:/var/lib/mysql:Z
Volume=/home/loic/mediawiki/db:/var/lib/mysql:Z
Environment=MARIADB_ROOT_PASSWORD=bTxhx7Ntwu6TwQzUdpfyArPk
Environment=MARIADB_ROOT_PASSWORD=***
Environment=MARIADB_DATABASE=mediawiki
Environment=MARIADB_DATABASE=mediawiki
Environment=MARIADB_USER=mediawiki
Environment=MARIADB_USER=mediawiki
Environment=MARIADB_PASSWORD=YcLJN5h9wjT65BLWemJL3LEu
Environment=MARIADB_PASSWORD=***
Exec=--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --innodb-file-per-table=1
Exec=--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --innodb-file-per-table=1


Ligne 40 : Ligne 68 :
</syntaxhighlight>
</syntaxhighlight>


=== Application MediaWiki (`mediawiki-app.container`) ===
=== Application (`mediawiki-app.container`) ===
Fichier : `~/.config/containers/systemd/mediawiki-app.container`
<syntaxhighlight lang="ini">
<syntaxhighlight lang="ini">
[Unit]
[Unit]
Ligne 56 : Ligne 83 :
Volume=/home/loic/mediawiki/app:/var/www/html:Z
Volume=/home/loic/mediawiki/app:/var/www/html:Z
Environment=PHP_MEMORY_LIMIT=256M
Environment=PHP_MEMORY_LIMIT=256M
Environment=APACHE_RUN_USER=www-data
Environment=APACHE_RUN_GROUP=www-data
PublishPort=8098:80
PublishPort=8098:80


Ligne 69 : Ligne 94 :


=== Fonctionnement ===
=== 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`).
* '''Démarrage auto''' : systemd démarre mediawiki-db puis mediawiki-app au boot (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.
* '''Redémarrage auto''' : Restart=always avec 5s de délai si crash.
* '''Mises à jour auto''' : podman-auto-update.timer (nuit) pull les nouvelles images et recrée les conteneurs (AutoUpdate=registry).
 
== Données / emplacements à sauvegarder ==
* Données wiki : /home/loic/mediawiki/app
* Base : /home/loic/mediawiki/db
 
== Sauvegarde ==
* Sauvegarder /home/loic/mediawiki/app et /home/loic/mediawiki/db après arrêt propre.
* Dump MariaDB : podman exec mediawiki-db mariadb-dump -umediawiki -p mediawiki > dump.sql
 
== Restauration ==
* Restaurer les dossiers app et db.
* Relancer via systemctl --user start mediawiki-app.service.
 
== Remarques ==
Le wiki héberge la documentation d'installation, la trace logicielle et les intégrations Mermaid / PlantUML / BPMN JS / D2 / Graphviz.
 
== Maintenance documentaire ==
Lors d'un ajout d'extensions, d'un changement de quadlet, de variables env, de Caddy ou de structure documentaire, mettre à jour cette page.
 
== Trace documentaire ==
Cette page fait partie de [[Trace install tas]].

Version du 21 mars 2026 à 20:08

Trace install tas - MediaWiki

Rôle

Wiki collaboratif et base documentaire.

Accès

Ports

8098 local, 25698 public via Caddy

Exécution / runtime

Depuis le 2026-03-21 : conteneurs gérés par systemd via les quadlets Podman (fichiers .container). Données dans /home/loic/mediawiki/app et /home/loic/mediawiki/db.

Chemins de configuration

  • /home/loic/.config/containers/systemd/mediawiki-app.container
  • /home/loic/.config/containers/systemd/mediawiki-db.container
  • /home/loic/.config/containers/systemd/mediawiki.network
  • /home/loic/mediawiki/app/LocalSettings.php

Volumes / persistance

  • /home/loic/mediawiki/app -> /var/www/html
  • /home/loic/mediawiki/db -> /var/lib/mysql

Dépendances

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

Configuration Podman Systemd (Quadlets)

Depuis le 2026-03-21, les conteneurs sont gérés par systemd via les quadlets Podman pour assurer le démarrage automatique et les mises à jour.

Réseau (`mediawiki.network`)

[Unit]
Description=MediaWiki Network

[Network]
Label=app=mediawiki

Base de données (`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=***
Environment=MARIADB_DATABASE=mediawiki
Environment=MARIADB_USER=mediawiki
Environment=MARIADB_PASSWORD=***
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-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
PublishPort=8098:80

[Service]
Restart=always
RestartSec=5

[Install]
WantedBy=default.target

Fonctionnement

  • Démarrage auto : systemd démarre mediawiki-db puis mediawiki-app au boot (Requires=).
  • Redémarrage auto : Restart=always avec 5s de délai si crash.
  • Mises à jour auto : podman-auto-update.timer (nuit) pull les nouvelles images et recrée les conteneurs (AutoUpdate=registry).

Données / emplacements à sauvegarder

  • Données wiki : /home/loic/mediawiki/app
  • Base : /home/loic/mediawiki/db

Sauvegarde

  • Sauvegarder /home/loic/mediawiki/app et /home/loic/mediawiki/db après arrêt propre.
  • Dump MariaDB : podman exec mediawiki-db mariadb-dump -umediawiki -p mediawiki > dump.sql

Restauration

  • Restaurer les dossiers app et db.
  • Relancer via systemctl --user start mediawiki-app.service.

Remarques

Le wiki héberge la documentation d'installation, la trace logicielle et les intégrations Mermaid / PlantUML / BPMN JS / D2 / Graphviz.

Maintenance documentaire

Lors d'un ajout d'extensions, d'un changement de quadlet, de variables env, de Caddy ou de structure documentaire, mettre à jour cette page.

Trace documentaire

Cette page fait partie de Trace install tas.