[{"data":1,"prerenderedAt":161},["ShallowReactive",2],{"seo-verification":3,"blog-mettre-a-jour-mattermost-v10-v11-lts-fr":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"id":7,"slug":8,"slugs":9,"title":12,"excerpt":13,"readTime":14,"views":15,"isPinned":16,"publishedAt":17,"category":18,"categories":24,"featuredImage":26,"bgImage":27,"posterImage":28,"relatedSolution":29,"intro":32,"sections":33,"ctaTitle":104,"ctaBody":105,"ctaButton":106,"ctaUrl":107,"relatedPosts":108},284,"mettre-a-jour-mattermost-v10-v11-lts",{"fr":8,"en":10,"ar":11},"upgrade-mattermost-v10-to-v11-lts","تحديث-mattermost-من-v10-إلى-v11-lts","Mettre à jour Mattermost v10 vers v11 LTS","Mattermost ESR v10.11 est en fin de vie depuis le 15 août 2026. Migrez vers la v11 LTS sans perte de données ni d'historique grâce à cette procédure Docker pas à pas.",10,0,false,"2026-08-19T00:00:00+00:00",{"id":19,"name":20,"slug":21,"color":22,"icon":23},7,"Self-hosting","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[25],{"id":19,"name":20,"slug":21,"color":22,"icon":23},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fmettre-a-jour-mattermost-v10-v11-lts-poster.svg",{"categorySlug":30,"appSlug":31},"collaboration","mattermost","Mattermost ESR v10.11 a atteint sa fin de vie le 15 août 2026 : les instances non mises à jour ne reçoivent plus aucun correctif de sécurité. La v11 est la LTS courante — c'est la cible. Cette procédure couvre la sauvegarde PostgreSQL, la mise à jour Docker et la vérification post-migration, de façon à préserver l'intégralité de votre historique de messages et de vos plugins.",[34,38,48,51,91,95,98,101],{"type":35,"title":36,"body":37},"h2","Pourquoi mettre à jour maintenant","Mattermost publie des versions ESR (Extended Support Release) avec une durée de vie étendue, puis déclare leur fin de vie à une date annoncée à l'avance. **L'ESR v10.11 est en fin de vie depuis le 15 août 2026.** À partir de cette date, aucun correctif de sécurité n'est backporté sur cette branche : les vulnérabilités découvertes après la date d'EOL restent ouvertes sur les instances qui ne migrent pas.\n\nUne messagerie d'équipe reçoit des pièces jointes, des identifiants partagés en DM, parfois des clés d'API posées en message. Une instance non patchée expose ces données à tout correctif non appliqué. La v11 est la LTS en cours de cycle — c'est la seule version qui recevra des correctifs pendant encore plusieurs mois.",{"type":39,"title":40,"items":41},"ul","Ce que la v11 LTS apporte par rapport à l'ESR v10.x",[42,43,44,45,46,47],"**Correctifs de sécurité actifs** — la branche reçoit les patchs de sécurité publiés par l'équipe Mattermost tout au long de son cycle de support.","**Améliorations de performance** — optimisations de requêtes PostgreSQL et réduction de la consommation mémoire sous forte charge.","**Interface des appels vidéo retravaillée** — qualité et stabilité améliorées pour les appels en canaux.","**Plugins mis à jour** — les plugins officiels (Calls, Boards, Playbooks) ont des versions compatibles v11 publiées dans le gestionnaire de plugins.","**Corrections de migration de base de données** — des migrations cumulées depuis v10 sont appliquées proprement, ce qui améliore l'intégrité à long terme du schéma.","**Support étendu** — la v11 LTS bénéficiera d'une fenêtre de support prolongée, vous évitant une nouvelle migration à brève échéance.",{"type":35,"title":49,"body":50},"Prérequis avant de commencer","Vérifiez les points suivants avant de lancer la procédure.\n\n**Docker Compose v2** — la commande doit répondre `docker compose version` (avec espace, pas un tiret). Si vous avez encore `docker-compose` v1, migrez d'abord vers Compose v2 : les images officielles Mattermost v11 supposent ce format.\n\n**Accès root ou sudo** sur le VPS — les commandes qui suivent agissent sur les volumes Docker et les fichiers de configuration.\n\n**Espace disque disponible** — vérifiez avec `df -h` que le volume qui héberge vos volumes Docker dispose d'au moins 3 Go libres pour les dumps et les images temporaires.\n\n**RAM suffisante** — Mattermost v11 tourne correctement avec 2 Go de RAM pour moins de 50 utilisateurs actifs. Vérifiez avec `free -m` avant la mise à jour.\n\n**Version actuelle notée** — avant toute opération, notez la version installée : `docker exec \u003Cmattermost-container> mattermost version`. Ce point est l'étape 1 de la procédure.",{"type":52,"title":53,"steps":54},"steps","Procédure de mise à jour pas à pas",[55,58,61,64,67,70,73,76,79,82,85,88],{"title":56,"body":57},"Noter la version actuelle","Avant de modifier quoi que ce soit, relevez la version en cours :\n\n```bash\ndocker exec mattermost mattermost version\n```\n\nNotez le numéro (par exemple `v10.11.2`). Cette référence vous permettra de comparer après la mise à jour et de prouver que la migration a bien eu lieu.",{"title":59,"body":60},"Sauvegarder la base PostgreSQL","C'est l'étape la plus critique. Exécutez un `pg_dump` depuis le conteneur PostgreSQL :\n\n```bash\ndocker exec \u003Cpg-container> pg_dump -U mattermost mattermost > backup_mattermost_$(date +%Y%m%d).sql\n```\n\nRemplacez `\u003Cpg-container>` par le nom réel de votre conteneur (visible avec `docker ps`). Vérifiez que le fichier `.sql` créé n'est pas vide (`ls -lh backup_mattermost_*.sql`). Sans cette sauvegarde, toute migration BDD échouée est irréversible.",{"title":62,"body":63},"Sauvegarder les volumes Docker","Sauvegardez également les volumes Mattermost (configuration, données, plugins) :\n\n```bash\ntar czf mattermost_volumes_$(date +%Y%m%d).tar.gz \u002Fopt\u002Fmattermost\u002Fconfig \u002Fopt\u002Fmattermost\u002Fdata \u002Fopt\u002Fmattermost\u002Fplugins \u002Fopt\u002Fmattermost\u002Flogs\n```\n\nAdaptez le chemin à votre installation (`\u002Fopt\u002Fmattermost` est le répertoire standard du dépôt officiel `mattermost-docker`). Déplacez l'archive hors du VPS sur un stockage externe avant de continuer.",{"title":65,"body":66},"Noter les plugins actifs","Depuis le **System Console → Plugins → Plugin Management**, listez tous les plugins activés avec leur version. Notez-les dans un fichier texte : après la mise à jour, vous devrez vérifier la compatibilité de chacun.\n\nAlternativement, via l'API :\n\n```bash\ncurl -s -H \"Authorization: Bearer \u003Cvotre-token>\" https:\u002F\u002Fchat.votredomaine.com\u002Fapi\u002Fv4\u002Fplugins | python3 -m json.tool | grep -E '\"id\"|\"version\"|\"active\"'\n```",{"title":68,"body":69},"Couper Mattermost et PostgreSQL","Arrêtez la stack proprement avant de tirer les nouvelles images :\n\n```bash\ndocker compose down\n```\n\nVérifiez qu'aucun conteneur Mattermost ne tourne encore : `docker ps | grep mattermost`.",{"title":71,"body":72},"Tirer les nouvelles images","Depuis le répertoire contenant votre `docker-compose.yml` :\n\n```bash\ndocker compose pull\n```\n\nCette commande télécharge les nouvelles images pour tous les services déclarés (`mattermost` et `postgres`). Si votre `docker-compose.yml` épingle une version explicite (`mattermost\u002Fmattermost-team-edition:v10.x.x`), mettez-la à jour vers `v11` ou vers `latest` (puis épinglez ensuite le digest précis pour la reproductibilité).",{"title":74,"body":75},"Redémarrer la stack","Relancez l'ensemble des services :\n\n```bash\ndocker compose up -d\n```\n\nMattermost démarre, détecte que la base est à un schéma v10 et lance les migrations automatiquement. Cette étape peut prendre de 30 secondes à quelques minutes selon la taille de votre base.",{"title":77,"body":78},"Vérifier les migrations de base de données","Suivez les logs immédiatement après le démarrage :\n\n```bash\ndocker compose logs mattermost | grep -i migrat\n```\n\nLes lignes attendues ressemblent à `Running migration X.Y` ou `Migrating database from version X`. Si vous voyez `failed to run migrations` ou `error running migration`, arrêtez (`docker compose down`) et restaurez depuis le dump avant d'aller plus loin.\n\nPour suivre en direct : `docker compose logs -f mattermost` — attendez le message `Server is listening on`.",{"title":80,"body":81},"Vérifier la nouvelle version","Confirmez que la mise à jour est bien effective :\n\n```bash\ndocker exec mattermost mattermost version\n```\n\nLa sortie doit afficher un numéro `v11.x.x`. Connectez-vous à l'interface web et naviguez dans **System Console → About → Mattermost Server** pour croiser la vérification.",{"title":83,"body":84},"Tester les fonctionnalités critiques","Avant de valider la mise à jour, testez manuellement les points suivants :\n\n- Connexion d'un compte utilisateur\n- Envoi et réception d'un message dans un canal public\n- Envoi d'un message direct\n- Envoi d'un fichier joint\n- Vérification de l'historique des messages antérieurs à la mise à jour\n- Fonctionnement des webhooks entrants si vous en avez configuré\n\nL'historique complet doit rester accessible : c'est le premier point à vérifier.",{"title":86,"body":87},"Vérifier les plugins","Dans **System Console → Plugins → Plugin Management**, comparez la liste avec les notes prises à l'étape 4. Pour chaque plugin activé :\n\n1. Vérifiez qu'il s'affiche toujours comme **actif**.\n2. Si un plugin est désactivé avec un message d'incompatibilité, consultez la page de son dépôt pour une version compatible v11.\n3. Mettez à jour depuis le gestionnaire de plugins si une nouvelle version est disponible.\n\nLes plugins officiels (Calls, Boards, Playbooks) ont leurs versions v11 disponibles dans le marketplace intégré.",{"title":89,"body":90},"Nettoyer les anciennes images Docker","Une fois la mise à jour validée, libérez l'espace occupé par les anciennes images :\n\n```bash\ndocker image prune -f\n```\n\nCette commande supprime toutes les images non référencées par un conteneur actif. Elle peut récupérer plusieurs gigaoctets si vous avez conservé plusieurs versions d'images Mattermost.",{"type":92,"title":93,"body":94},"tip","Toujours tester la mise à jour hors production d'abord","Si vous administrez une instance en production avec de nombreux utilisateurs, reproduisez l'opération sur un environnement de test au préalable. Restaurez une copie de votre dump PostgreSQL sur un VPS de test, lancez la procédure complète, et vérifiez le résultat. Cela vous révèle les incompatibilités de plugins et les éventuelles erreurs de migration avant qu'elles n'affectent vos utilisateurs.",{"type":35,"title":96,"body":97},"Compatibilité des plugins après la mise à jour","La v11 a introduit des changements dans l'API des plugins. La majorité des plugins officiels et des plugins actifs de la communauté sont compatibles, mais des incompatibilités peuvent apparaître sur des plugins anciens non maintenus.\n\n**Comment vérifier la compatibilité :** rendez-vous dans **System Console → Plugins → Plugin Management**. Un plugin incompatible s'affiche avec un statut d'erreur et un message précisant la version minimale requise.\n\n**Si un plugin est incompatible :**\n\n1. Consultez le dépôt GitHub du plugin pour vérifier si une version compatible v11 a été publiée.\n2. Si oui, téléchargez le `.tar.gz` et installez-le depuis **System Console → Plugins → Upload Plugin**.\n3. Si non, évaluez si le plugin est critique. S'il l'est, signalez-le aux mainteneurs et gardez une copie de la v10 (votre dump) en attendant.\n\n**Les plugins officiels Mattermost** (Calls, Boards, Playbooks, Jira, GitHub) sont mis à jour en même temps que le serveur et disponibles directement dans le marketplace intégré — vérifiez simplement qu'ils sont à leur dernière version disponible.",{"type":35,"title":99,"body":100},"Dépannage : erreurs courantes","**`failed to run migrations` dans les logs**\nLa migration de base de données a échoué. Causes fréquentes : le conteneur PostgreSQL n'était pas démarré avant Mattermost (problème d'ordre de démarrage dans Compose), ou les permissions sur la base sont incorrectes. Arrêtez avec `docker compose down`, vérifiez que `postgres` démarre avant `mattermost` (clause `depends_on` dans `docker-compose.yml`), puis relancez. Si l'erreur persiste, restaurez le dump et examinez les logs complets avec `docker compose logs mattermost 2>&1 | grep -i error`.\n\n**Plugin marqué comme incompatible immédiatement après la mise à jour**\nLe plugin est lié à une API obsolète. Désactivez-le depuis la console (`System Console → Plugins → Plugin Management → Désactiver`) pour que Mattermost reste fonctionnel, puis mettez à jour le plugin séparément.\n\n**SIGTERM pendant la migration (conteneur arrêté en plein travail)**\nSi le conteneur Mattermost redémarre en cours de migration (timeout Docker, SIGTERM), la base peut se retrouver dans un état intermédiaire. Signe : `mattermost version` affiche un numéro hybride ou les logs montrent des erreurs de colonnes manquantes. Restaurez depuis le dump PostgreSQL et relancez en vous assurant que `MATTERMOST_UPGRADE_TIMEOUT` est configuré à une valeur suffisante (au minimum `600` secondes pour les grandes bases).\n\n**Problème de connexion après le redémarrage**\nSi l'interface répond mais les utilisateurs ne peuvent pas se connecter, vérifiez que `MM_SERVICESETTINGS_SITEURL` dans `docker-compose.yml` est bien en `https:\u002F\u002F` et correspond exactement à l'URL que vous utilisez. Un changement de hostname ou de protocole pendant la mise à jour invalide les tokens de session existants.\n\n**Erreur `database schema version mismatch`**\nMattermost détecte un écart entre la version du binaire et le schéma de la base. Ce cas survient si vous aviez épinglé une image v10 et que la migration partielle d'une tentative précédente a laissé le schéma dans un état v11 partiel. Restaurez le dump v10 complet, puis relancez la procédure depuis l'étape 5.",{"type":35,"title":102,"body":103},"Après la mise à jour : bonnes pratiques","Une fois la v11 validée en production, quelques réglages maintiennent l'instance dans un état maîtrisé.\n\n**Épinglez la version d'image dans `docker-compose.yml`** — remplacez `latest` par le tag précis (`mattermost\u002Fmattermost-team-edition:v11.x.x`). Cela évite qu'un `docker compose pull` ultérieur tire silencieusement une version future sans que vous l'ayez décidé.\n\n**Planifiez les sauvegardes PostgreSQL** — un cron qui exécute `pg_dump` toutes les 24 heures et conserve les 7 derniers dumps est le minimum pour une instance de production.\n\n**Vérifiez le canal de sécurité Mattermost** — abonnez-vous à `https:\u002F\u002Fmattermost.com\u002Fsecurity-updates\u002F` pour recevoir les annonces de CVE. La prochaine EOL de la v11 LTS sera annoncée plusieurs mois à l'avance.\n\n**Pour aller plus loin**, retrouvez le guide d'installation initial dans l'article [Héberger Mattermost sur votre propre VPS](\u002Fblog\u002Fheberger-mattermost) et les arguments pour quitter Slack dans [Migrer de Slack vers Mattermost ou Rocket.Chat sur VPS](\u002Fblog\u002Fmigration-slack-mattermost-rocketchat-vps).","Hébergez Mattermost sur votre propre infrastructure","Un VPS Cloud ServOrbit avec Docker préconfiguré vous donne la base pour déployer et maintenir Mattermost sans dépendre d'un éditeur SaaS. Vos messages et votre historique restent sur votre infrastructure.","Déployer Mattermost sur VPS","\u002Fvps-cloud",[109,127,143],{"id":110,"slug":111,"slugs":112,"title":115,"excerpt":116,"readTime":14,"views":15,"isPinned":16,"publishedAt":117,"category":118,"categories":123,"featuredImage":26,"bgImage":27,"posterImage":125,"relatedSolution":126},262,"migration-slack-mattermost-rocketchat-vps",{"fr":111,"en":113,"ar":114},"migrating-from-slack-to-mattermost-or-rocketchat-on-a-vps","الهجرة-من-slack-إلى-mattermost-أو-rocketchat-على-vps","Migrer de Slack vers Mattermost ou Rocket.Chat sur VPS","Slack conditionne l'historique et le SSO à des tarifs enterprise. Hébergez Mattermost ou Rocket.Chat sur votre VPS : migration pas à pas, import de l'historique inclus.","2026-08-14T00:00:00+00:00",{"id":119,"name":120,"slug":121,"color":122,"icon":121},5,"Comparatif","comparatif","bg-info\u002F10 text-info",[124],{"id":119,"name":120,"slug":121,"color":122,"icon":121},"\u002Fblog\u002Fcovers\u002Fmigration-slack-mattermost-rocketchat-vps-poster.svg",{"categorySlug":30,"appSlug":31},{"id":128,"slug":129,"slugs":130,"title":133,"excerpt":134,"readTime":135,"views":136,"isPinned":16,"publishedAt":137,"category":138,"categories":139,"featuredImage":26,"bgImage":27,"posterImage":141,"relatedSolution":142},76,"heberger-mattermost",{"fr":129,"en":131,"ar":132},"host-mattermost-on-your-own-vps","استضافة-mattermost-على-خادم-vps-الخاص-بك","Héberger Mattermost sur votre propre VPS","Déployez Mattermost sur votre VPS avec Docker, PostgreSQL et SSL. Messagerie d'équipe privée, alternative self-hosted à Slack.",4,1,"2026-04-05T00:00:00+00:00",{"id":19,"name":20,"slug":21,"color":22,"icon":23},[140],{"id":19,"name":20,"slug":21,"color":22,"icon":23},"\u002Fblog\u002Fcovers\u002Fheberger-mattermost-poster.svg",{"categorySlug":21,"appSlug":31},{"id":144,"slug":145,"slugs":146,"title":149,"excerpt":150,"readTime":151,"views":15,"isPinned":16,"publishedAt":152,"category":153,"categories":158,"featuredImage":26,"bgImage":27,"posterImage":160,"relatedSolution":26},229,"docker-compose-production-checklist",{"fr":145,"en":147,"ar":148},"docker-compose-in-production-10-point-checklist","docker-compose-في-الإنتاج-قائمة-التحقق-من-10-نقاط","Docker Compose en production : checklist des 10 points","Checklist Docker Compose en production : 10 paramètres essentiels, gestion des secrets sans downtime, sauvegarde volumes sans corruption, CVE-2026-17106.",14,"2026-08-06T00:00:00+00:00",{"id":154,"name":155,"slug":156,"color":157,"icon":156},3,"Déploiement","deploiement","bg-success\u002F10 text-success",[159],{"id":154,"name":155,"slug":156,"color":157,"icon":156},"\u002Fblog\u002Fcovers\u002Fdocker-compose-production-checklist-poster.svg",1787580982034]