How to Install the Etherpad Collaborative Note-Taking Platform on Linux

Image: Nuthawut/Adobe Stock

In these wild times, collaboration has become an absolute necessity. Fortunately, there are many ways to collaborate: each platform offers the means to work together, whether it’s a desktop, server, mobile or container deployment, you name it and you can collaborate with him. Some of these collaborative tools offer a ton of functionality, but sometimes you want something simple – just the ability to collaborate on, say, notes.

For such a need, you should turn to a very easy-to-use Etherpad, which is a real-time collaboration platform that can be deployed on just about any operating system.

Etherpad Features:

  • A minimalist WYSIWYG rich text editor
  • dark mode
  • Image support
  • Extension of functionality via plugins
  • Scalability (an infinite number of pads with up to ~20,000 changes per second, per pad)

Whether you’re a small business that needs to collaborate with basic notes or an enterprise looking for a real-time collaborative note-taking platform, Etherpad might be just what you need.

I’ll show you two different ways to deploy Etherpad (Node.js and Docker), so you can use this tool regardless of your platform.

SEE: Windows, Linux, and Mac commands everyone should know (free PDF) (TechRepublic)

What you will need

To deploy Etherpad, you will need an operating system that supports Node.js or Docker. I will walk you through the process of installing Node.js and Docker on an Ubuntu based system. Therefore, if you are using a different operating system, you will need to modify the installation instructions to suit your needs.

How to install Node.js

The first thing we are going to do is install Node.js. To do this, log in to your Ubuntu-based machine and run the command:

sudo apt-get install node.js -y

The installation should go smoothly.

How to install Docker

We will install the latest version of Docker CE (Community Edition). From the terminal window, add the official Docker GPG key with:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

Now add the repository:

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Install the necessary dependencies with:

sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release git -y

Finally, we can install the latest version of the Docker engine:

sudo apt-get update

sudo apt-get install docker-ce docker-ce-cli containerd.io -y

Add your to the Docker group with the command:

sudo usermod -aG docker $USER

Notify the system of the change with:

newgrp docker

How to install Etherpad with Node.js

This first method uses Node.js to install and run Etherpad. To install Etherpad with Node.js, first create the etherpad user with:

sudo adduser --system --group --home /opt/etherpad etherpad

Switch to the new user with:

sudo -u etherpad bash

Switch to the new directory:

cd /opt/etherpad

Clone the source from GitHub with:

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

Install the necessary dependencies with the command:

./bin/installDeps.sh

Go to the source directory with cd src then install the SQLite database using npm with the command:

npm install sqlite3

Go to the etherpad directory:

cd /opt/etherpad

Next, we need to make some configuration changes. Open the configuration file with:

nano settings.json

First, find the section:

"dbType": "dirty",

"dbSettings": {

"filename": "var/dirty.db"

},

Change that to:

"dbType": "sqlite",

"dbSettings": {

"filename": "var/sqlite.db"

},

Then find the line:

"trustProxy": false,

Change that to:

"trustProxy": true,

Save and close the file.

Exit the etherpad user and create a systemd file with the command:

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

In this file, paste the following:

[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

Save and close the file. Reload the systemd daemon with:

sudo systemctl daemon-reload

Finally, start and activate the service with:

sudo sytemctl enable --now etherpad

You can now access the Etherpad web interface by pointing a browser to http://SERVER:9001where SERVER is the IP address or domain of the hosting server.

How to deploy Etherpad with Docker

This deployment is much simpler. Since Docker is already installed, all you need to do is first extract the etherpad image with:

docker pull etherpad/etherpad

With the image saved to local storage, deploy the container with:

docker run --detach --publish 9001:9001 etherpad/etherpad

Once the container is running, you can point a browser to http://SERVER:9001where SERVER is the IP address or domain of the hosting server, and you are ready to start working with Etherpad (Figure A).

Figure A

The Etherpad interface is very easy to use.

And that’s all there is to deploying the Etherpad real-time note-taking service. The web UI is incredibly easy to use, so your team will have no problem getting up to speed. Take advantage of this powerful collaborative tool.

Subscribe to TechRepublic How to make technology work on YouTube for all the latest tech tips for professionals from Jack Wallen.


Source link

Steven L. Nielsen