GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer Etherpad sur Ubuntu 20.04

Etherpad est un éditeur en ligne en temps réel basé sur le Web qui permet aux rédacteurs de modifier simultanément un document texte et de surveiller toutes les modifications en temps réel. Il est open source, personnalisable et permet d'afficher le texte de chaque auteur dans sa propre couleur. Il fournit également une API HTTP que vous pouvez intégrer à vos applications pour gérer les utilisateurs et les groupes. Il propose plusieurs plugins qui vous aident à intégrer les notifications par e-mail, le téléchargement de fichiers, les appels vidéo dans Etherpad. Dans ce didacticiel, nous allons vous montrer comment installer l'éditeur Web Etherpad sur le serveur Ubuntu 20.04.

Prérequis

  • Un serveur exécutant Ubuntu 20.04.
  • Un nom de domaine valide pointé vers l'adresse IP de votre serveur.
  • Un mot de passe root est configuré sur le serveur.

Mise en route

Avant de commencer, vous devrez mettre à jour vos packages système vers la dernière version. Vous pouvez les mettre à jour en exécutant la commande suivante :

apt-get update -y

Une fois tous les packages mis à jour, vous devrez installer certaines dépendances dans votre système. Vous pouvez tous les installer avec la commande suivante :

apt-get install gnupg2 git unzip libssl-dev pkg-config gcc g++ make build-essential -y

Une fois tous les packages installés, vous pouvez passer à l'étape suivante.

Installer et configurer la base de données MariaDB

Etherpad utilise MariaDB comme backend de base de données. Vous devrez donc installer le serveur MariaDB sur votre système. Vous pouvez l'installer avec la commande suivante :

apt-get install mariadb-server -y

Après avoir installé MariaDB, connectez-vous au shell MariaDB avec la commande suivante :

mysql

Après la connexion, créez une base de données et un utilisateur pour Etherpad avec la commande suivante :

MariaDB [(none)]> create database etherpad;
MariaDB [(none)]> grant all privileges on etherpad.* to [email protected] identified by 'password';

Ensuite, videz les privilèges et quittez MariaDB avec la commande suivante :

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

À ce stade, votre base de données est configurée pour Etherpad. Vous pouvez maintenant passer à l'étape suivante.

Installer Node.js

Etherpad est basé sur Node.js. Vous devrez donc installer Node.js sur votre système. Par défaut, la dernière version de Node.js n'est pas disponible dans le référentiel standard Ubuntu 20.04. Vous devrez donc ajouter le référentiel Node.js à votre système. Vous pouvez l'ajouter avec la commande suivante :

curl -sL https://deb.nodesource.com/setup_14.x -o nodesource_setup.sh
bash nodesource_setup.sh

Une fois le dépôt ajouté, installez le Node.js avec la commande suivante :

apt-get install nodejs -y

Après avoir installé Node.js, vérifiez la version installée de Node.js avec la commande suivante :

node -v

Vous devriez obtenir le résultat suivant :

v14.15.0

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Installer et configurer Etherpad

Avant d'installer Etherpad. Il est recommandé d'exécuter Etherpad en tant qu'utilisateur distinct. Vous pouvez créer un nouvel utilisateur pour Etherpad avec la commande suivante :

adduser --home /opt/etherpad --shell /bin/bash etherpad

Il vous sera demandé de définir un mot de passe comme indiqué ci-dessous :

Adding user `etherpad' ...
Adding new group `etherpad' (1000) ...
Adding new user `etherpad' (1000) with group `etherpad' ...
Creating home directory `/opt/etherpad' ...
Copying files from `/etc/skel' ...
New password: 
Retype new password: 
passwd: password updated successfully
Changing the user information for etherpad
Enter the new value, or press ENTER for the default
	Full Name []: Hitesh       
	Room Number []: 1
	Work Phone []: 
	Home Phone []: 
	Other []: 
Is the information correct? [Y/n] Y

Ensuite, fournissez les autorisations appropriées au répertoire personnel d'Etherpad avec la commande suivante :

install -d -m 755 -o etherpad -g etherpad /opt/etherpad

Ensuite, basculez l'utilisateur vers Etherpad et téléchargez la dernière version d'Etherpad à partir du référentiel Git à l'aide de la commande suivante :

su - etherpad
git clone --branch master https://github.com/ether/etherpad-lite.git

Ensuite, changez le répertoire vers le répertoire téléchargé et exécutez l'Etherpad en utilisant la commande suivante :

cd etherpad-lite
bin/run.sh

Cela installera toutes les dépendances et démarrera le serveur Etherpad. Une fois le serveur démarré avec succès, vous devriez obtenir le résultat suivant :

[2020-11-11 06:46:44.783] [INFO] console - Your Etherpad version is 1.8.6 (2c8769a)
[2020-11-11 06:46:44.958] [INFO] console - You can access your Etherpad instance at http://0.0.0.0:9001/
[2020-11-11 06:46:44.958] [WARN] console - Admin username and password not set in settings.json.  To access admin please uncomment and edit 'users' in settings.json
[2020-11-11 06:46:44.958] [WARN] console - Etherpad is running in Development mode.  This mode is slower for users and less secure than production mode.  You should set the NODE_ENV environment variable to production by using: export NODE_ENV=production

Ensuite, appuyez sur CTRL + C pour arrêter le serveur. Ensuite, vous devrez modifier le fichier settings.json et définir vos paramètres de base de données et d'administration :

nano settings.json

Supprimez les lignes suivantes :

"dbType" : "dirty",
  "dbSettings" : {
                   "filename" : "var/dirty.db"
                 },

Modifiez les paramètres MySQL comme indiqué ci-dessous :

  "dbType" : "mysql",
  "dbSettings" : {
    "user":     "etherpad",
    "host":     "localhost",
    "port":     3306,
    "password": "password",
    "database": "etherpad",
    "charset":  "utf8mb4"
  },

Remplacez la ligne trustProxy par true :

  "trustProxy": true,

Définissez un mot de passe pour l'utilisateur admin :

  "users": {
    "admin": {
      "password": "adminpassword",
      "is_admin": true
    },

Enregistrez et fermez le fichier puis installez les dépendances requises avec la commande suivante :

./bin/installDeps.sh

Une fois toutes les dépendances installées, quittez l'utilisateur Etherpad avec la commande suivante :

exit

À ce stade, Etherpad est installé et configuré. Vous pouvez maintenant passer à l'étape suivante.

Créer un fichier de service Systemd pour Etherpad

Ensuite, vous devrez créer un fichier de service systemd pour gérer le service Etherpad. Vous pouvez le créer avec la commande suivante :

nano /etc/systemd/system/etherpad.service

Ajoutez les lignes suivantes :

[Unit]
Description=Etherpad-lite, the collaborative editor.
After=syslog.target network.target

[Service]
Type=simple
User=etherpad
Group=etherpad
WorkingDirectory=/opt/etherpad/etherpad-lite
Environment=NODE_ENV=production

ExecStart=/usr/bin/node /opt/etherpad/etherpad-lite/src/node/server.js

Restart=always

[Install]
WantedBy=multi-user.target

Enregistrez et fermez le fichier puis rechargez le démon systemd en exécutant la commande suivante :

systemctl daemon-reload

Ensuite, démarrez le service Etherpad et activez-le au redémarrage du système avec la commande suivante :

systemctl start etherpad
systemctl enable etherpad

Vous pouvez également vérifier l'état du service Etherpad avec la commande suivante :

systemctl status etherpad

Vous devriez voir le résultat suivant :

? etherpad.service - Etherpad-lite, the collaborative editor.
     Loaded: loaded (/etc/systemd/system/etherpad.service; disabled; vendor preset: enabled)
     Active: active (running) since Wed 2020-11-11 06:50:49 UTC; 4s ago
   Main PID: 12269 (node)
      Tasks: 13 (limit: 4691)
     Memory: 119.1M
     CGroup: /system.slice/etherpad.service
             ??12269 /usr/bin/node /opt/etherpad/etherpad-lite/src/node/server.js

Configurer Nginx pour Etherpad

À ce stade, Etherpad est démarré et écoute sur le port 9001. Ensuite, vous devrez installer et configurer Nginx en tant que proxy inverse pour accéder à l'Etherpad. Tout d'abord, installez le Nginx avec la commande suivante :

apt-get install nginx -y

Ensuite, créez un nouveau fichier de configuration d'hôte virtuel Nginx avec la commande suivante :

nano /etc/nginx/sites-available/etherpad.conf

Ajoutez les lignes suivantes :

upstream etherpad {
   server localhost:9001;
   keepalive 32;
}

server {
   listen 80;
   server_name etherpad.mydomain.com;

   location / {
       client_max_body_size 50M;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_http_version 1.1;
       proxy_pass http://etherpad;
   }
}

Enregistrez et fermez le fichier puis activez le fichier de configuration de l'hôte virtuel Nginx avec la commande suivante :

ln -s /etc/nginx/sites-available/etherpad.conf /etc/nginx/sites-enabled/

Ensuite, vérifiez Nginx pour toute erreur de syntaxe avec la commande suivante :

nginx -t

Vous devriez obtenir le résultat suivant :

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Ensuite, redémarrez le service Nginx pour appliquer les modifications :

systemctl restart nginx

Vous pouvez également vérifier l'état de Nginx avec la commande suivante :

systemctl status nginx

Vous devriez obtenir le résultat suivant :

? nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2020-11-11 06:53:44 UTC; 6s ago
       Docs: man:nginx(8)
    Process: 12984 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 12985 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 13001 (nginx)
      Tasks: 3 (limit: 4691)
     Memory: 3.5M
     CGroup: /system.slice/nginx.service
             ??13001 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??13002 nginx: worker process
             ??13003 nginx: worker process

Nov 11 06:53:44 ubuntu2004 systemd[1]: Starting A high performance web server and a reverse proxy server...
Nov 11 06:53:44 ubuntu2004 systemd[1]: Started A high performance web server and a reverse proxy server.

Accéder à Etherpad

Maintenant, ouvrez votre navigateur Web et tapez l'URL http://etherpad.mydomain.com . Vous serez redirigé vers la page suivante :

Indiquez le nom de votre page et cliquez sur OK bouton. Vous devriez voir votre tableau de bord Etherpad sur la page suivante :

Conclusion

Toutes nos félicitations! vous avez installé et configuré avec succès Etherpad avec Nginx en tant que proxy inverse sur le serveur Ubuntu 20.04. Vous pouvez facilement utiliser l'Etherpad dans l'environnement de production. N'hésitez pas à me demander si vous avez des questions.


Ubuntu
  1. Comment installer Odoo sur Ubuntu

  2. Comment installer Maven sur Ubuntu

  3. Comment installer R sur Ubuntu 16.04

  4. Comment installer Etherpad sur Ubuntu 18.04

  5. Comment installer Go sur Ubuntu 18.04

Comment installer R sur Ubuntu 18.04

Comment installer qt sur Ubuntu 20.04

Comment installer Etherpad Lite sur Ubuntu 20.04 LTS

Comment installer Etherpad sur Ubuntu 20.04 LTS

Comment installer Go dans Ubuntu 20.04

Comment installer Go sur Ubuntu 22.04