Установка Etherpad · 8 min read · Sep 10, 2025

Как установить редактор Etherpad на сервер Ubuntu 24.04

Etherpad — это редактор текста с открытым исходным кодом, который поддерживает совместную работу и работает в реальном времени для вашей команды, доступный из любого места в любое время, так как Etherpad является веб-редактором текста. Etherpad поддерживает версионность и встроенное форматирование для команд и предлагает высоко настраиваемый редактор с поддержкой различных плагинов. Он также поддерживает современные форматы документов, такие как doc, pdf, odt, markdown и т. д.

В этом руководстве мы проведем вас через процесс установки редактора Etherpad на сервер Ubuntu 24.04. Вы настроите Etherpad с сервером базы данных MariaDB, Nginx в качестве обратного прокси, а затем защитите Etherpad с помощью HTTPS через Certbot и Letsencrypt.

Предварительные требования

Для начала этого руководства убедитесь, что у вас есть следующее:

Сервер Ubuntu 24.04.
Пользователь, не являющийся root, с правами администратора.
Доменное имя, указывающее на IP-адрес сервера.

Установка зависимостей

Etherpad — это совместимый редактор в реальном времени, написанный на Node.js. Чтобы установить его, вам необходимо установить зависимости пакетов, такие как Node.js, NPM и Git. Etherpad также требует Python3 и MySQL/MariaDB для базы данных.

Сначала обновите репозиторий Ubuntu с помощью следующей команды:

sudo apt update

обновление репозитория

Теперь установите зависимости для Etherpad, используя команду ниже. С помощью этой команды вы установите сервер MariaDB, Nginx, Node.js, Python3, Git и некоторые основные инструменты.

sudo apt install mariadb-server nginx nodejs npm gzip git curl python3 libssl-dev

Введите Y, чтобы подтвердить установку.

установка зависимостей

После установки проверьте службы MariaDB и Nginx, чтобы убедиться, что обе службы работают.

Проверьте службу MariaDB с помощью следующей команды:

sudo systemctl is-enabled mariadb  
sudo systemctl status mariadb

Как вы можете видеть ниже, служба MariaDB работает и будет запускаться автоматически при загрузке.

проверка mariadb

Теперь проверьте службу Nginx, используя команду ниже. Вы должны получить аналогичный вывод, когда служба Nginx работает и включена.

sudo systemctl is-enabled nginx  
sudo systemctl status nginx

проверка nginx

Наконец, проверьте версию Node.js с помощью команды.

node -v

Убедитесь, что у вас установлена версия Node.js v18.x или выше. Etherpad поддерживает Node.js v18 и выше.

Настройка сервера MariaDB

После установки зависимостей вы настроите сервер MariaDB и создадите новую базу данных и пользователя для Etherpad. Вы защитите MariaDB с помощью утилиты ‘mariadb-secure-installation’, а затем создадите базу данных и пользователя через клиент MariaDB.

Чтобы защитить ваш сервер MariaDB, выполните следующее:

sudo mariadb-secure-installation

Вам будет предложено настроить сервер MariaDB:

  1. По умолчанию установка MariaDB не имеет пароля, нажмите ENTER, когда вас попросят ввести пароль.
  2. Теперь введите Y, чтобы установить пароль root для MariaDB. Затем введите новый пароль для MariaDB и повторите его.
  3. Введите Y, чтобы удалить анонимного пользователя из вашей установки MariaDB.
  4. Введите Y снова, когда вас попросят отключить удаленный вход для пользователя root MariaDB.
  5. Введите Y, чтобы удалить тестовую базу данных по умолчанию из вашей MariaDB.
  6. Наконец, введите Y, чтобы перезагрузить привилегии таблиц и применить новые изменения.

После того как вы защитили и настроили сервер MariaDB, вы создадите новую базу данных и пользователя для Etherpad.

Войдите в сервер MariaDB с помощью следующей команды. Введите пароль root MariaDB, когда вас попросят.

sudo mariadb -u root -p

Далее выполните следующие запросы MariaDB, чтобы создать новую базу данных ‘etherpad_db‘, пользователя ‘etherpad‘ с паролем ‘StrongPasswordEtherpadDB‘. Вы можете настроить следующие данные базы данных по своему усмотрению.

CREATE DATABASE etherpad_db;  
CREATE USER etherpad@localhost IDENTIFIED BY 'StrongPasswordEtherpadDB';  
GRANT CREATE,ALTER,SELECT,INSERT,UPDATE,DELETE on etherpad_db.* to etherpad@localhost;  
FLUSH PRIVILEGES;

создание базы данных и пользователя

Теперь выполните следующий запрос, чтобы убедиться, что пользователь ‘etherpad‘ может получить доступ к базе данных ‘etherpad_db‘.

SHOW GRANTS FOR etherpad@localhost;

Вы можете увидеть ниже, что у пользователя ‘etherpad‘ есть несколько привилегий к базе данных ‘etherpad_db‘.

Наконец, введите quit, чтобы выйти из сервера MariaDB.

проверка пользователя базы данных

Установка Etherpad Lite

После создания базы данных и пользователя вы загрузите исходный код Etherpad, установите зависимости Etherpad с помощью скрипта установки, а затем настроите установку Etherpad с сервером MariaDB.

По умолчанию Etherpad использует менеджер пакетов pnpm для управления установкой, поэтому сначала вам нужно установить ‘pnpm’ глобально в вашей системе.

Сначала установите пакет pnpm глобально (-g) с помощью следующей команды npm. По умолчанию проект Etherpad использует pnpm в качестве менеджера пакетов Node.js вместо стандартного npm.

npm install pnpm -g

Теперь выполните команду ниже, чтобы создать нового системного пользователя ‘etherpad‘. Этот пользователь будет использоваться для запуска приложения Etherpad.

sudo adduser --system --no-create-home --home=/opt/etherpad-lite --group etherpad

Далее перейдите в /opt и загрузите исходный код Etherpad в директорию ‘etherpad-lite‘ с помощью git. Затем измените владельца директории ‘/opt/etherpad-lite‘ на пользователя ‘etherpad‘.

cd /opt && git clone --branch master https://github.com/ether/etherpad-lite.git   
sudo chown -R etherpad:etherpad /opt/etherpad-lite

После этого перейдите в директорию ‘opt/etherpad-lite’ и установите зависимости Node.js для Etherpad с помощью следующей команды.

cd /opt/etherpad-lite  
sudo su -s /bin/bash -c "./bin/run.sh" etherpad

Ниже показан процесс загрузки зависимостей Etherpad с использованием менеджера пакетов pnpm.

установка зависимостей

После установки зависимостей Etherpad должен запуститься автоматически. Вы можете увидеть ниже, что Etherpad 2.0.3 работает.

Нажмите Ctrl+c, чтобы завершить текущий процесс Etherpad. Вы будете настраивать Etherpad с базой данных MariaDB.

работающий etherpad

Теперь откройте файл ‘settings.json‘ с помощью следующего редактора nano.

nano settings.json

Измените заголовок для вашей установки Etherpad.

 "title": "Etherpad Ubuntu 24",

Измените IP-адрес по умолчанию на 12.0.0.1 или localhost. Это запустит процесс Etherpad только на localhost.

"ip": "127.0.0.1",  
"port": 9001,   

Закомментируйте конфигурацию базы данных по умолчанию ‘dirty‘, как показано ниже:

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

Вставьте конфигурацию ниже, чтобы настроить базу данных с сервером MariaDB. Убедитесь, что вы изменили данные о базе данных на свои.

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

Когда закончите, сохраните файл и выйдите из редактора.

Запуск Etherpad как службы systemd

Теперь, когда вы установили и настроили Etherpad, вы создадите новый файл службы systemd для Etherpad. С его помощью вы сможете запускать Etherpad в фоновом режиме, и вы сможете управлять Etherpad с помощью команды ‘systemctl’.

Создайте новый файл службы systemd для Etherpad ‘/etc/systemd/system/etherpad.service‘ с помощью редактора nano.

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

Добавьте следующую конфигурацию в файл. С помощью этого вы будете запускать Etherpad в фоновом режиме как службу systemd через команду ‘pnpm’.

[Unit]  
Description=Etherpad-lite, the collaborative editor.  
After=syslog.target network.target mariadb.service  
  
[Service]  
Type=simple  
User=etherpad  
Group=etherpad  
WorkingDirectory=/opt/etherpad-lite  
ExecStart=/usr/local/bin/pnpm run prod  
# используйте mysql плюс полный settings.json, чтобы избежать времени ожидания службы, планируя перезапуск.  
Restart=always  
  
[Install]  
WantedBy=multi-user.target

Сохраните файл и выйдите.

Теперь выполните команду ниже, чтобы перезагрузить менеджер systemd и применить файл службы Etherpad.

sudo systemctl daemon-reload

После перезагрузки systemd запустите и включите службу ‘etherpad’ с помощью следующей команды systemctl.

sudo systemctl start etherpad  
sudo systemctl enable etherpad

Далее выполните команду ниже, чтобы проверить статус службы Etherpad и убедиться, что служба работает.

sudo systemctl status etherpad

Вы можете увидеть ниже, что служба Etherpad работает как служба.

Наконец, проверьте порт по умолчанию Etherpad 9001 с помощью команды ‘ss’ ниже. Вы должны увидеть, что порт 9001 используется процессом Etherpad.

ss -tulpn | grep 9001

Настройка Nginx как обратного прокси

Вы будете запускать Etherpad с Nginx в качестве обратного прокси в этом руководстве. Теперь вы создадите конфигурацию блока сервера Nginx для Etherpad и убедитесь, что вы подготовили свое доменное имя для Etherpad.

Используйте следующую команду редактора nano, чтобы создать новый блок сервера Nginx ‘/etc/nginx/sites-available/etherpad.conf’.

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

Добавьте следующую конфигурацию и измените опцию server_name на ваше доменное имя. С этой конфигурацией вы будете использовать Nginx в качестве обратного прокси для Etherpad, который работает на порту 9001.

server {  
 listen 80;  
 server_name etherpad.howtoforge.local;  
  
 access_log /var/log/nginx/eplite.access.log;  
 error_log /var/log/nginx/eplite.error.log;  
  
location / {  
 proxy_pass http://127.0.0.1:9001;  
 proxy_buffering off; # будьте осторожны, эта строка не переопределяет никакое proxy_buffering on, установленное в conf.d/file.conf  
 proxy_set_header Host $host;  
 proxy_pass_header Server;  
# Обратите внимание, что вы также можете передать эти заголовки и т. д.  
 proxy_set_header X-Real-IP $remote_addr; # https://nginx.org/en/docs/http/ngx_http_proxy_module.html  
 proxy_set_header X-Forwarded-For $remote_addr; # EP логи, чтобы показать фактический удаленный IP  
 proxy_set_header X-Forwarded-Proto $scheme; # для EP, чтобы установить флаг безопасного cookie, когда используется https  
 proxy_http_version 1.1; # рекомендуется для соединений keepalive  
# Прокси WebSocket - из https://nginx.org/en/docs/http/websocket.html  
 proxy_set_header Upgrade $http_upgrade;  
 proxy_set_header Connection "upgrade";  
 }  
  
}

Сохраните и закройте файл, когда закончите.

Теперь выполните команду ниже, чтобы активировать файл блока сервера ‘etherpad.conf’ и проверить синтаксис Nginx.

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

Вы должны получить вывод ‘nginx is ok…тест успешен‘ с правильным синтаксисом Nginx.

Наконец, выполните команду ниже, чтобы перезапустить службу Nginx и применить ваш новый блок сервера. После выполнения команды ваш Etherpad будет доступен через веб-сервер Nginx.

sudo systemctl restart nginx

Защита Etherpad с помощью HTTPS

После настройки обратного прокси Nginx вы защитите Etherpad с помощью HTTPS. Если вы используете публичный домен, вы можете использовать следующие шаги для настройки HTTPS с Certbot и Letsencrypt. Пользователи локального домена могут использовать самоподписанные сертификаты.

Установите Certbot и плагин Certbot Nginx с помощью следующей команды. Когда вас попросят, введите Y, чтобы подтвердить установку.

sudo apt install certbot python3-certbot-nginx

Теперь выполните следующую команду certbot, чтобы сгенерировать SSL/TLS сертификаты от Letsencrypt. Убедитесь, что вы изменили доменное имя и адрес электронной почты на свои данные.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d etherpad.howtoforge.local

После завершения процесса ваши сертификаты будут доступны в директории ‘/etc/letsencrypt/live/domain.com‘. Также ваша установка Etherpad должна автоматически работать с HTTPS через плагин Certbot Nginx.

Доступ к Etherpad

Посетите ваше доменное имя Etherpad https://etherpad.howtoforge.local, чтобы получить доступ к вашей установке Etherpad. Если все прошло успешно, вы получите следующую страницу:

Введите новое имя для вашего первого блока и нажмите OK, чтобы подтвердить.

создание блока

Теперь вы увидите редактор документов для Etherpad. Теперь вы можете редактировать документ одновременно с вашими друзьями или коллегами.

редактор etherpad

Заключение

Поздравляем! Вы установили редактор Etherpad на сервер Ubuntu 24.04. Вы запустили Etherpad с сервером базы данных MariaDB и веб-сервером Nginx. Также вы защитили Etherpad с помощью HTTPS через Certbot и Letsencrypt.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.