Installation de MyPads sur Debian 8

logo_mypadsVendre du MyPads ?

Allons droit au but, si je me lance dans cette installation c’est dans l’idée d’évaluer la faisabilité de proposer un service payant basé sur ce logiciel. Pour l’instant, j’en suis aux premières expérimentations. De nombreuses questions sont encore en suspens tant sur le plan technique que commercial.

Comment facturer ce service ? Une facturation au compte utilisateur impliquerait d’interdire les pads publics, sinon comment comptabiliser les utilisateurs 🙂 ?

Le nombre de pads créés pourrait être un autre critère, mais là aussi ce n’est pas évident si l’on permet des pads publics. Il me semble que c’est plus le nombre d’utilisateurs qui génère la charge machine  que le nombre de pads créé. Un pad public utilisé par 200 personnes ce ne doit pas être rien en terme de charge.

Reste la solution, et c’est peut-être la plus simple, de mettre à disposition des instances dédiées avec des ressources allouées. Ce sont elles qui limiteront de fait les capacités d’usage de MyPads. L’avantage est de ne pas avoir à se soucier du nombre d’utilisateurs. En effet, il peut y avoir des utilisateurs ponctuels, réguliers, etc. De plus l’ouverture de pads publics redevient envisageable.

J’ouvrirais probablement une bêta avec des comptes ou instances gratuites pour voir un peu le comportement en charge de l’engin. En attendant, je vais déjà l’utiliser dans le cadre de mes prestations ou de projets en lien avec la formation.

Reste à savoir s’il y a un marché pour ce type d’offre… Face aux Google Apps ou à Office 365 dont les fonctionnalités sont bien plus avancées, j’ai quelques doutes… Mais il y a peut-être une micro-niche dans le domaine de l’éducation ou de la formation.

Mais commençons par le début : la mise en place. Je procède à un installation dans un serveur virtuel sous Proxmox 3 et une machine virtuelle OpenVZ équipé d’une Debian 8.

Installer Etherpad

C’est la première étape, MyPads a été développé comme un module complémentaire du logiciel libre Etherpad. Framasoft a déjà pensé à nous et met à disposition un tutoriel pour l’installation d’Etherpad. Si je prends, je donne, allez voir sur la page mécènes, vous y trouverez ma société 🙂 . Je suggère fortement à toutes les entreprises qui utilisent Mypads sur leurs serveurs d’en faire autant.

Etherpad est basé sur NodeJS. Ce dernier est disponible dans les dépôts de Debian 8 ce qui n’est pas le cas pour la version 7. Il vous faudra procéder comme expliqué sur le tutoriel de Framasoft dans ce dernier cas. Donc pour NodeJS :

apt-get install nodejs

et pour Node Package Manager :

apt-get install npm

Toujours rien de bien difficile. Continuons de suivre le tutoriel en créant un utilisateur dédié à Etherpad et en installant git et tout ce qu’il faut pour compiler.

Enfin, voici le moment venu de cloner le dépôt d’Etherpad sur la machine. A ce stade, il vous faudra également ajouter la commande curl

apt-get install curl

et créer le lien symbolique node pointant vers nodejs

ln -s /usr/bin/nodejs /usr/bin/node

Vous pourrez alors lancer le script d’installation. Effectuez la configuration comme indiqué sur le tutoriel et installer Mongodb. A noter qu’il n’est plus utile d’indiquer « sessionKey » dans le fichier json. La valeur est désormais générée automatiquement.

apt-get install mongodb

Appliquez les modifications de configuration du tutoriel. Si vous n’avez pas fait d’erreur, la console va vous afficher :

Ensure that all dependencies are up to date...  If this is the first time you have run Etherpad please be patient.
npm WARN package.json async-stacktrace@0.0.2 No repository field.
npm WARN package.json channels@0.0.4 No repository field.
npm WARN package.json tinycon@0.0.1 No repository field.
Ensure jQuery is downloaded and up to date...
Clearing minified cache...
Ensure custom css/js files are created...
Started Etherpad...
[2016-02-27 20:59:07.483] [INFO] console - Installed plugins: 
[2016-02-27 20:59:07.496] [INFO] console - Report bugs at https://github.com/ether/etherpad-lite/issues
[2016-02-27 20:59:07.497] [INFO] console - Your Etherpad version is 1.5.7 (d880527)
[2016-02-27 20:59:07.578] [INFO] console - You can access your Etherpad instance at http://0.0.0.0:9001/
[2016-02-27 20:59:07.578] [INFO] console - The plugin admin page is at http://0.0.0.0:9001/admin/plugins

Well done 🙂
Sélection_207

Il vous faudra encore installer un proxy web pour rediriger selon vos besoins un nom de domaine sur votre installation. Dans mon cas ce dernier existe déjà, il m’a suffi de déclarer mon nouveau sous-domaine et le faire pointer vers la bonne machine virtuelle.

Dans les éléments de configuration d’Etherpad, j’ai changé la langue par défaut positionné à « en-gb » par ‘fr » dans le fichier /home/etherpad/etherpad-lite/settings.json aux environs de la ligne 73.

Autres détails, j’utilise pour l’instant l’utilitaire screen pour lancer Etherpad et bénéficier d’une vue sur la console. Ce n’est probablement pas la solution finale que j’adopterais, mais pour l’instant elle me permet de voir ce qui se passe côté serveur simplement.

Ajoutons MyPads

Là, cela devient enfantin, puisqu’il suffit de se rendre sur la page d’administration sous l’url http://example.com/admin/plugins et de faire une recherche sur Mypads. Cliquez ensuite sur « Install ». Vous n’avez plus qu’à vous rendre sur votre url http://example.com/mypads.

Pour accéder à la page d’administration de MyPads, il vous faut utiliser l’utilisateur que vous avez configuré dans le fichier /home/etherpad/etherpad-lite/settings.json.

Dans zone de recherche saisissez mypads et cliquez sur Install. A ce stade, j’ai également ajouté les plug-ins suivants :

  • adminpads : pour gérer tous les pads qui ont été créés sur l’instance et faire le ménage facilement ;
  • sync_status: pour voir un petit message et se rassurer sur la bonne sauvegarde de ses modifications ;

Quand je compare mes pads à ceux du Framapad, je me dis qu’il doit me manquer encore quelques plug-ins. Si un admin de Framasoft passe par là et peut laisser la liste des plug-ins en commentaires, cela serait sympa 🙂

Il me faut personnaliser la page d’accueil et limiter ou au moins contrôler les possibilités de création de comptes. Je n’ai pas retrouvé l’information sur qui avait développé au final MyPads. Là encore, laissez l’information en commentaire, j’aimerais bien le contacter pour chiffrer les évolutions qui me sont nécessaires pour pouvoir proposer une offre de services pour MyPads.


Réagir à cet article

Article original écrit par Philippe Scoffoni le 12/03/2016. | Lien direct vers cet article

Cette création est mise à disposition sous un contrat Creative Commons BY à l'exception des images qui l'illustrent (celles-ci demeurent placées sous leur mention légale d'origine).

.
Vus : 754
Publié par Philippe Scoffoni : 544