How to install Etherpad Lite on Ubuntu 20.04 LTS


Learn the steps for installing and using Etherpad on Ubuntu 20.04 focal fossa / 18.04 Bionic Beaver LTS / Debian Linux distributions for a free and open source collaborative text editor.

EtherPad is a real-time, web-based collaborative text editor where multiple people can easily work together online on a document. This is an open source web application, so it doesn’t have to pay anything. The application is scalable for thousands of simultaneous users in real time. It provides full data export capabilities and runs on your server, under your control.

You can think of having your own Google Docs type service, but with plugins, support to extend the capabilities of the application. You can simply invite new users with the built-in sharing feature or email them the link to the document.

Avoid annoying compatibility issues with the free EtherPad web app. Unlike the Google service Google Docs, for example, you don’t need an account with the manufacturer to use the web app. Registration is no longer necessary, which makes collaboration even easier.

An Etherpad is created on the Internet by specifying a title on the corresponding page, the generated link allows access to the pad, in particular to the editing function. The advantage of working on an Etherpad is that participants can be assigned a color so you can see who wrote what. You also have a kind of ‘control function’ for the development of the pad thanks to the clock symbol. Once clicked, all changes to the pad can be viewed in time lapse. Editors of the document can communicate with each other via a built-in chat function.

Main characteristics:

  • Rich edition
  • Minimalist editor
  • Dark mode
  • Support for images within a pad using a plugin.
  • Video chat
  • Collaboration ++
  • Document analysis –
  • Scalable – Scale up to ∞ number of active pads with up to ~ 20,000 changes per second, per pad.

Steps to install on Etherpad Lite on Ubuntu 20.04 or 18.04 LTS

1. Perform the system update and add Git

If you have not yet updated your system, run it once to refresh the system repository cache and update the installed packages.

sudo apt update
sudo apt upgrade

Also install Git

sudo apt install git -y

2. Install NodeJs on Ubuntu 20.04 or 18.04

Along with git, to install Etherpad we also need to have Nodejs on our Ubuntu system. Therefore, to install the latest version of Nodejs, run the commands below:

Add a Nodejs repository

curl -fsSL | sudo -E bash -


After adding the repository, let’s install its packages

sudo apt install -y nodejs

3. Install the MariaDB server

By default, the Etherpad will save the data to a plain text file, so for better security use the MariaDB database server,

sudo apt install mariadb-server -y

Create a database:

sudo mysql
create database etherpad_db;
grant all privileges on etherpad_db.* to h2suser@localhost identified by 'password';

flush privileges;

To note: change the database name, user and password in the above command that you want to set.

4. Add a dedicated user

For added security, just create a non-sudo user.

adduser ether

Now switch to your newly created user:

su ether

5. Clone Etherpad files using Git

Download the required files that we need to run the Etherpad on our Ubuntu server. And for that, just use the git which will directly clone the file on your system.

git clone --branch master

6. Install Etherpad Lite on Ubuntu or Debian

After the files have been cloned, switch to the directory and run the installation script under standard user, not root.

cd etherpad-lite
export NODE_ENV=production

Once you get the screenshot below, stop the server by pressing Ctrl + C.

Stop the Etherpad server

7. Define the database, username, password for Etherpad

As we have created a dedicated MySQL database, so we will use this and also change the default administrator password for the Etherpad instance.

Edit the settings.json file

nano etherpad-lite/settings.json

Find the line and add the symbols / * & * / to comment out the lines as shown in the screenshot

/ *

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

Default comment database

Also delete the symbol / * and the symbol * / given at the start and end of MYSQL lines.

Disable Ether Lite Default Database

After that add the database values ​​like user, database name and password you created in MariaDB section.

Add database values ​​for Etherpad

Also find and set the trustProxy value at true, if a reverse proxy works like SSL, otherwise leave it as default.

 "trustProxy": true,

Define the trusted proxy

Find and enable authentication by modifying "requireAuthentication": false, false value at true.

Enable authentication

Then find the user section, delete the / * and * / symbols, and then change the password for the admin user.

Change the Etherpad administrator password

Save the file by pressing Ctrl + O, press the Enter key, then Ctrl + X to leave.

Install dependencies:


Exit etherpad user


8. Create a service file to run Etherpad in the background

Create a service file

sudo nano /etc/systemd/system/etherpad.service

Add the following lines:

Description=Etherpad-lite, the collaborative editor.


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



to safeguard the press kit Ctrl + O, press the Enter key, and the exit – CTRL + X.

Reload daemon:

sudo systemctl daemon-reload

Start and activate the Etherpad service

sudo systemctl start etherpad
sudo systemctl enable etherpad

Check the service status to confirm

systemctl status etherpad

9. Access the web interface

By default, the Etherpad Lite will run on port number 9001, so open your browser and type in your server address with port 9001.

Remember to allow the port in the firewall

sudo ufw allow 9001

Etherpad Lite interface

Other articles:

10 Best Ubuntu-Based Linux Distributions For Laptops Or PCs 2021
How to install npm and nodejs 14. x on Kali Linux
How to enable ssh on Ubuntu 20.04 LTS
How to install WHM & CPanel on Ubuntu
Install i3 window manager on Ubuntu

Source link

Leave A Reply

Your email address will not be published.