Etherpad

A modern really-real-time collaborative document editor.

Access Etherpad

  • User interface: https://<SERVER_IP>
  • Admin interface: https://<SERVER_IP>/admin
  • Admin credentials: Username admin, password stored in .env как ADMIN_PASSWORD

Add Users via Admin Settings

1. Visit: https://<SERVER_IP>/admin

2. Go to Settings.

3. A JSON configuration file will be displayed.

4. Locate the users section:

  "users": {
    "admin": {
      // 1) "password" can be replaced with "hash" if you install ep_hash_auth
      // 2) please note that if password is null, the user will not be created
      "password": "${ADMIN_PASSWORD:null}",
      "is_admin": true
    },
    "user": {
      // 1) "password" can be replaced with "hash" if you install ep_hash_auth
      // 2) please note that if password is null, the user will not be created
      "password": "test",
      "is_admin": false
    }
  },

5. Add a new user (follow valid JSON syntax):

  "users": {
    "admin": {
      // 1) "password" can be replaced with "hash" if you install ep_hash_auth
      // 2) please note that if password is null, the user will not be created
      "password": "${ADMIN_PASSWORD:null}",
      "is_admin": true
    },
    "user": {
      // 1) "password" can be replaced with "hash" if you install ep_hash_auth
      // 2) please note that if password is null, the user will not be created
      "password": "test",
      "is_admin": false
    },
    "newuser": {
      "password": "strongpassword",
      "is_admin": false
    }
  },

6. Click Save Settings.

7. Click Restart Etherpad.

Важные файлы и каталоги

  • Установка приложения: /root/etherpad
  • Файл Docker Compose: /root/etherpad/docker-compose.yml
  • Переменные окружения: /root/etherpad/.env
  • PostgreSQL database data: /var/lib/docker/volumes/etherpad_postgres_data/_data
  • Etherpad runtime data: /var/lib/docker/volumes/etherpad_etherpad-var/_data
  • Каталог плагинов: /var/lib/docker/volumes/etherpad_plugins/_data
  • Конфигурация Nginx: /etc/nginx/sites-available/etherpad
  • SSL-сертификаты: /etc/nginx/ssl/

Управление услугами

Список контейнеров:

docker ps

Перезапустить контейнеры:

docker compose -f /root/etherpad/docker-compose.yml restart

Follow Etherpad logs:

docker compose -f /root/etherpad/docker-compose.yml logs -f

Перезапустите Nginx:

systemctl restart nginx

Включение SSL с доменом

1. Направьте ваш домен на IP-адрес сервера.

2. Отредактируйте конфигурацию Nginx и замените оба server_name <IP>; с вашим доменом (<your-domain>) для блоков HTTP (порт 80) и HTTPS (порт 443):

vim /etc/nginx/sites-available/etherpad

3. Установите Certbot:

apt install -y certbot python3-certbot-nginx

4. Выполните следующую команду, чтобы сгенерировать действительный сертификат Let’s Encrypt:

certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com

5. Замените пути SSL в конфигурации Nginx:

vim /etc/apache2/sites-available/etherpad
# Before:
    # ssl_certificate /etc/nginx/ssl/fullchain.pem;
    # ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
    # ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
    # ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;

6. Перезапустите Nginx, чтобы применить изменения:

systemctl restart nginx

7. Откройте браузер и перейдите по адресу: https://yourdomain.com

Примечания

  • Etherpad is served behind an Nginx reverse proxy for SSL termination and improved security.
  • A self-signed certificate may trigger browser warnings; this is expected unless Let’s Encrypt is used.
  • Some browsers may display errors or cause Etherpad to function incorrectly.
  • Etherpad has been tested and confirmed working on Firefox, which is recommended for best compatibility.

Детали заявки