technique:adminserv:mattermost:admin

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
technique:adminserv:mattermost:admin [2023/03/16 16:29] qduchemitechnique:adminserv:mattermost:admin [2024/10/08 10:15] (Version actuelle) qduchemi
Ligne 1: Ligne 1:
 +{{indexmenu_n>1}}
  
 +# Administration de Mattermost
 +
 +L'administration de Mattermost se fait soit via la ligne de commande (depuis les machines de Picasoft ou en local), soit via [[technique:adminserv:mattermost:api|l'API REST.]]
 +
 +Les outils présentés ici permettent de réaliser toutes les opérations possibles et inimaginables, contrairement à la [Console Système](https://team.picasoft.net/admin_console/) qui reste limitée.
 +
 +Au vu des évolutions récentes de Mattermost (début 2020), la méthode préférée et recommandée par Mattermost est la première (`mmctl`).
 +
 +Quoi qu'il arrive, cet article présente une façon d'utiliser des commandes **directement sur le serveur de production**, il est **indispensable** d'essayer toute commande destructrice ou massive sur un serveur de test.
 +
 +## mmctl, comme à la maison
 +
 +Le nouvel outil recommencé pour administrer Mattermost depuis la ligne de commande se nomme `mmctl`.
 +Il est inclus dans l'image Docker, mais on préférera l'utiliser depuis son ordinateur personnel, dans la mesure où il demande des identifiants ou jetons d'accès personnels.
 +
 +Les méthodes d'installations évoluant, on conseille de suivre la [documentation](https://docs.mattermost.com/manage/mmctl-command-line-tool.html).
 +
 +<bootnote warning>Dans les exemples qui suivent, on remplacera la version par la version du serveur en production.</bootnote>
 +
 +Aujourd'hui, la méthode préférée utilise le binaire `go` pour récupérer l'outil :
 +
 +Une fois `mmctl` récupéré, on s'authentifie. Je conseille d'utiliser un jeton d'accès personnel pour éviter un leak d'identifiants sur votre machine.
 +
 +Ou bien via l'exécutable direction :
 +
 +```bash
 +curl -vfsSL -O https://releases.mattermost.com/mmctl/v8.0.0/linux_amd64.tar
 +```
 +
 +On crée un jeton d'accès dans les paramètres du compte :
 +
 +{{ :technique:adminsys:mattermost:jeton_mattermost.png?600 | Création d'un jeton d'accès personnel sur Mattermost }}
 +
 +L'avantage, c'est que ce jeton vous permettra de faire ce que vous voulez dans la mesure de vos droits, que vous soyez administrateur ou non ! Ce peut être un bonne outil si vous administrez seulement une équipe. :)
 +
 +Ensuite, vous pouvez vous authentifier avec la commande suivante :
 +
 +```bash
 +$ mmctl auth login https://team.picasoft.net --name Picasoft --access-token <votre jeton>
 +```
 +
 +À ce stade, toutes les commandes [listées dans la documentation](https://docs.mattermost.com/administration/mmctl-cli-tool.html) sont utilisables. Exemple :
 +
 +```bash
 +$ mmctl user search quentinduchemin@tuta.io
 +id: h59n84k9jbgu78ob75wubbgxwr
 +username: quentinduchemin
 +nickname: 
 +position: Guignol de Picasoft
 +first_name: Quentin
 +last_name: Duchemin
 +email: quentinduchemin@tuta.io
 +auth_service:
 +```
 +
 +## mattermost, sur le serveur
 +
 +<bootnote critical>Outil déprécié : ne plus utiliser!</bootnote>
 +
 +Un autre outil d'administration s'appelle ```mattermost```, et sera [bientôt déprécié](https://docs.mattermost.com/administration/command-line-tools.html). 
 +Cet outil est disponible à l'intérieur du conteneur Docker du serveur Mattermost, et ne nécessite **pas d'authentification**.
 +
 +Notez que pour une raison obscure, les commandes sont très longues à s'exécuter, raison de plus d'utiliser le premier outil.
 +
 +La documentation des commandes est accessible [[https://docs.mattermost.com/administration/command-line-tools.html|sur le site de Mattermost]].
 +
 +On se rend sur [[technique:graph_services|la machine virtuelle hébergeant Mattermost]] et on rentre dans le conteneur Docker :
 +
 +```bash
 +$ docker exec -it mattermost-app sh
 +# cd bin/
 +```
 +
 +Exemple d'utilisation de la commande, pour lister les canaux de l'équipe Picasoft : 
 +
 +```bash
 +$ ./mattermost channel list picasoft
 +```