What is Etherpad?
Etherpad is a real-time collaborative text editor that allows multiple users to work on the same document simultaneously. It’s open-source, web-based, and widely used for team writing, note-taking, planning, and live collaborative sessions. All changes are reflected in real time, with authors differentiated by color and a built-in chat function for collaboration.
Running Etherpad on Ubuntu 24.04 LTS gives you a modern and stable environment for deploying a self-hosted collaborative editing platform—ideal for teams, schools, events, and organizations that value data control and privacy.
Key Features of Etherpad
- Real-time editing: Multiple users can edit documents live
- Color-coded authorship: Easily identify who wrote what
- Built-in chat: Communicate directly while collaborating
- Version control: Time slider allows rewinding and replaying edits
- Plugins system: Extend functionality with hundreds of plugins (e.g., export formats, tables, diagrams)
- Import/export: Supports PDF, DOC, ODT, HTML, and plain text
- Pad privacy controls: Password-protect pads or make them read-only
- Multilingual interface: Available in dozens of languages
Why Use Etherpad on Ubuntu 24.04?
Ubuntu 24.04 offers several advantages for running Etherpad:
- Long-Term Support (LTS) through 2029 ensures long-lasting stability
- Updated versions of Node.js, PostgreSQL, MariaDB, and system libraries
- Full compatibility with systemd, UFW, Nginx/Apache, and Docker
- Seamless deployment in on-premises, cloud, or containerized environments
Typical Use Cases
- Team brainstorming and meeting notes
- Collaborative writing for articles, books, or papers
- Shared to-do lists or project planning
- Classroom note-taking or live group activities
- Developer pair programming or collaborative scripting
System Requirements
Component | Recommended Minimum |
---|---|
OS | Ubuntu 24.04 LTS (64-bit) |
Node.js | Node.js 18+ (LTS) |
RAM | 512 MB minimum (1 GB+ recommended) |
CPU | 1 core (multi-core for busy pads) |
Disk Space | 100 MB+ for files and logs |
Database | SQLite (default), PostgreSQL, or MySQL/MariaDB |
Etherpad runs as a Node.js application and stores pads in either a flat file or SQL database.
Security and Privacy Considerations
- Self-hosted Etherpad gives you full control over user data
- Can be protected behind HTTPS using reverse proxies like Nginx or Apache
- Supports access control, including password-protected pads and read-only sharing
- Plugins available for authentication via LDAP, OAuth, or custom login systems
- Optional logging and moderation tools for educational or shared environments
Deployment Methods
- Manual setup: Install Node.js, clone Etherpad from GitHub, configure and run
- Docker container: Official Docker image for isolated deployments
- Reverse proxy: Use Nginx or Apache to serve Etherpad on standard ports with HTTPS
- Cloud: Deployable on VPS providers like Shape.host, DigitalOcean, AWS, etc.
Etherpad vs Other Collaborative Editors
Feature | Etherpad | Google Docs | CryptPad | OnlyOffice |
---|---|---|---|---|
Real-time editing | Yes | Yes | Yes | Yes |
Self-hosting | Yes | No | Yes | Yes |
Plugin support | Extensive | Limited | Limited | Moderate |
Data privacy | Full (self-hosted) | Limited (Google-owned) | Encrypted | Depends on setup |
Built-in chat | Yes | No | Yes | No |
Best use case | Lightweight editing | Rich document creation | Privacy-first notes | Full document suite |
Etherpad on Ubuntu 24.04 is a powerful, real-time collaboration tool that’s easy to deploy, maintain, and customize. It provides a lightweight and open-source alternative to commercial cloud editors—perfect for teams, classrooms, and organizations that value privacy, simplicity, and control.
Ubuntu 24.04 offers a robust foundation with up-to-date packages and security, making it an ideal platform for self-hosted collaboration at any scale. Whether you’re planning a meeting, drafting an article, or organizing ideas live with others, Etherpad is a dependable tool to get it done.
Step 1: Create a VPS on Shape.Host
Before anything, you need a server to host Etherpad.
Go to https://shape.host and sign in.
Click “Create”, then select “Instance”.

Choose the data center location that’s closest to you.

Pick Ubuntu 24.04 (64-bit) as your OS.
Choose a plan with at least 2 CPUs, 4 GB RAM, and 20 GB SSD.

Click Create Instance.

Once created, copy the IP address from the Resources tab — you’ll use it to connect via SSH.

Step 2: Connect to the Server
From a Linux/macOS terminal:
ssh root@your_server_ip
For Windows, use PuTTY and connect using the root user.
Step 3: Install Required Packages
apt update
apt install gnupg2 git curl unzip libssl-dev pkg-config gcc g++ make build-essential
This installs system tools and libraries needed to build and run Etherpad.


Step 4: Install MariaDB (Database)
apt install mariadb-server
systemctl start mariadb
systemctl enable mariadb
systemctl status mariadb
Starts the MariaDB database server and ensures it runs on boot.


Step 5: Set Up the Etherpad Database
Log into the database:
mariadb
Inside the MariaDB prompt, run:
CREATE DATABASE etherdb;
GRANT ALL PRIVILEGES on etherdb.* to etheruser@localhost IDENTIFIED BY 'type_password_here';
FLUSH PRIVILEGES;
exit
This creates a database etherdb
and a user etheruser
with full access. Replace 'type_password_here'
with a strong password.

Step 6: Install Node.js 18 (Required for Etherpad)
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
apt update
apt install -y nodejs


Node.js is the runtime that Etherpad is built on.
Check versions to confirm:
node -v
npm -v

Step 7: Install pnpm (Package manager)
npm install -g pnpm
pnpm -v
pnpm
is used to install Etherpad’s dependencies.

Step 8: Create a Dedicated Etherpad User
useradd --system -d /opt/etherpad --shell=/bin/bash etherpad
passwd etherpad
install -d -m 755 -o etherpad -g etherpad /opt/etherpad
This adds a secure system user called etherpad
.

Step 9: Prepare Etherpad Directory
cd /opt/etherpad
su - etherpad
Creates the folder and switches to the new user.

Step 10: Clone and Run Etherpad
git clone --branch master https://github.com/ether/etherpad-lite.git
cd etherpad-lite
bin/run.sh
This downloads Etherpad and runs it once to set things up.


Step 11: Configure Etherpad Settings
nano settings.json
Edit the following section of the file:
"dbType" : "mysql",
"dbSettings" : {
"user": "etheruser",
"host": "localhost",
"port": 3306,
"password": "type_password_here",
"database": "etherdb",
"charset": "utf8mb4"
},
"trustProxy": true,
"users": {
"admin": {
"password": "type_password_here",
"is_admin": true
}
}
Replace the passwords with secure ones. Set "trustProxy": true
if you’ll use NGINX or any reverse proxy.


Step 12: Install Dependencies
./bin/installDeps.sh
exit
Installs all the packages Etherpad needs to work properly.

Step 13: Create a systemd Service
nano /etc/systemd/system/etherpad.service
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

Then run:
systemctl daemon-reload
systemctl start etherpad
systemctl enable etherpad
This will keep Etherpad running in the background and start it on boot.

Step 14: Install and Configure NGINX
apt install nginx

Create a reverse proxy config:
nano /etc/nginx/sites-available/etherpad.conf
Paste this:
upstream etherpad {
server localhost:9001;
keepalive 32;
}
server {
listen 80;
server_name etherpad.example.com;
location / {
client_max_body_size 50M;
proxy_set_header X-Real-IP $remote_addr;
proxy_http_version 1.1;
proxy_pass http://etherpad;
}
}

Enable it:
ln -s /etc/nginx/sites-available/etherpad.conf /etc/nginx/sites-enabled/
systemctl restart nginx
Replace etherpad.example.com
with your actual domain.

Step 15: Final Test (Optional Manual Run)
su - etherpad
cd ~/etherpad-lite
bin/run.sh
Only needed if you want to run Etherpad manually.
✅ Done!
You can now access Etherpad in your browser at:
http://your-server-ip
Or, if using a domain:
http://example.com

Shape.Host gives you:
- Reliable Linux SSD VPS servers with root access
- Clean Ubuntu 24.04 environments
- Easy deployments for any web tool like Etherpad
Get started now at https://shape.host