Un petit CMS, qui voit plus loin.Télécharger RenewCMS
Documentation

Recherchez des titres, des paramètres et des commandes.

Configurer les mises à jour depuis le navigateur

Installez l’assistant systemd une seule fois, puis téléchargez et installez les versions signées de RenewCMS depuis les paramètres.

Parcourir la documentation

Vérifier votre installation

Les mises à jour depuis le navigateur nécessitent l’exécutable autonome de RenewCMS (v2.6.0-beta ou ultérieur), lancé sous Linux par un service systemd sans privilèges. L’exécutable et son dossier parent doivent être contrôlés par root. Il vous faut un accès sudo au serveur pour la configuration et un compte propriétaire RenewCMS pour appliquer les mises à jour. Avec Docker, téléchargez une nouvelle image et recréez le conteneur.

Sauvegardez la base de données, les médias, la configuration et l’exécutable actuel avant de tester ou d’appliquer une mise à jour. L’assistant utilise des noms d’unités systemd fixes. Configurez-le pour une seule instance RenewCMS par serveur.

Installer le service systemd

Identifier les réglages du service

Les commandes reprennent le service et le fichier d’environnement du guide d’installation. Adaptez le nom de l’unité et le chemin de configuration. Avec SQLite, utilisez le dossier qui contient DB_FILE. Résolvez les chemins relatifs à partir du WorkingDirectory du service. Par exemple, ./data/renewcms.db sous /var/lib/renewcms donne /var/lib/renewcms/data. Conservez le chemin actuel de votre base. Avec une base externe, utilisez le DATA_DIR configuré dans RenewCMS.

Bash
systemctl show renewcms -p User -p WorkingDirectory -p ExecStart -p EnvironmentFiles
sudo grep -E '^(DB_FILE|DATA_DIR|PORT)=' /etc/renewcms/renewcms.env

Activer l’assistant de mise à jour

Exécutez cette commande une seule fois sur le serveur. Adaptez les deux chemins de l’exécutable, le nom du service, le dossier de données et le port. Utilisez le port local sur lequel RenewCMS répond à /healthz sur 127.0.0.1. La commande installe et démarre l’unité de surveillance systemd et écrit update-helper.json dans le dossier de données.

Bash
sudo /opt/renewcms/renewcms enable-browser-updates \
  --service renewcms \
  --binary /opt/renewcms/renewcms \
  --data-dir /var/lib/renewcms \
  --port 8080

Vérifier la configuration et tester un redémarrage

L’unité de surveillance doit afficher active et enabled. Rechargez les Paramètres avec le compte propriétaire et ouvrez la section Mises à jour. Si aucune mise à jour n’est prête, testez l’assistant en cliquant sur Redémarrer, puis en confirmant. Le site est brièvement indisponible. Attendez son retour, puis vérifiez /healthz sur l’adresse publique de votre CMS.

Bash
systemctl is-active renewcms-update.path
systemctl is-enabled renewcms-update.path

Installer une mise à jour depuis les paramètres

Dans Paramètres → Mises à jour, cliquez sur Rechercher des mises à jour. Si une nouvelle version est disponible, lisez ses notes de version et cliquez sur Mettre à jour. RenewCMS télécharge et vérifie la version signée pendant que votre site reste en ligne.

Lorsque la mise à jour est prête à être installée, enregistrez votre travail, cliquez sur Redémarrer et confirmez. Vous pouvez attendre une fenêtre de maintenance avant de redémarrer. Une fois le site de nouveau accessible, vérifiez la nouvelle version dans les Paramètres et contrôlez /healthz sur l’adresse publique de votre CMS.

Diagnostiquer un bouton absent ou une mise à jour en échec

Si le bouton Redémarrer est absent, vérifiez que vous utilisez le compte propriétaire et que le compte du service peut lire update-helper.json dans le dossier de données réel. Si vous avez configuré l’assistant avec le mauvais dossier, lancez disable-browser-updates avec le nom du service et le dossier de données d’origine avant de le réactiver avec les bons réglages.

Si le site ne revient pas ou si la mise à jour échoue, examinez update-result.json dans le dossier de données, consultez le journal de l’assistant et testez le point de contrôle local. Le retour arrière automatique rétablit l’exécutable précédent. Si vous devez annuler une migration de base de données, utilisez votre sauvegarde.

Bash
sudo journalctl -u renewcms-update.service -n 30 --no-pager
curl -fsS http://127.0.0.1:8080/healthz