Установка 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 работает и будет запускаться автоматически при загрузке.

Теперь проверьте службу Nginx, используя команду ниже. Вы должны получить аналогичный вывод, когда служба Nginx работает и включена.
sudo systemctl is-enabled nginx
sudo systemctl status 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:
- По умолчанию установка MariaDB не имеет пароля, нажмите ENTER, когда вас попросят ввести пароль.
- Теперь введите Y, чтобы установить пароль root для MariaDB. Затем введите новый пароль для MariaDB и повторите его.
- Введите Y, чтобы удалить анонимного пользователя из вашей установки MariaDB.
- Введите Y снова, когда вас попросят отключить удаленный вход для пользователя root MariaDB.
- Введите Y, чтобы удалить тестовую базу данных по умолчанию из вашей MariaDB.
- Наконец, введите 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.

Теперь откройте файл ‘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 на сервер Ubuntu 24.04. Вы запустили Etherpad с сервером базы данных MariaDB и веб-сервером Nginx. Также вы защитили Etherpad с помощью HTTPS через Certbot и Letsencrypt.
Get new posts in your inbox
No spam. Unsubscribe anytime.