Гид по технологиям

Установка и настройка Plausible — руководство по самохостингу и подключению

9 min read Веб-аналитика Обновлено 16 Dec 2025
Plausible: установка и самохостинг
Plausible: установка и самохостинг

Панель управления и логотип Plausible, вид дашборда сервиса аналитики

Быстрые ссылки

  • Обзор

  • Установка Plausible

  • Подключение сайта к Plausible

  • Исследование данных в Plausible

  • Настройка почты

  • Включение геоданных по странам

  • Краткое резюме

Обзор

Plausible делает ставку на приватность, простоту и понятные метрики. Это решение соответствует требованиям GDPR, CCPA и PECR; по умолчанию Plausible не ставит куки на устройства посетителей, поэтому часто отпадает необходимость в навязчивых баннерах согласия. Интерфейс веб-панели минималистичен: в одном экране можно увидеть число посетителей, просмотров страниц, показатель отказов и среднюю длительность сеанса. Также доступны данные по странам, источникам трафика и типам устройств.

Plausible можно использовать как коммерчески размещённый SaaS или развернуть самостоятельно (self-host). Для самохостинга потребуется Docker и Docker Compose. Образ доступен на Docker Hub под именем

plausible/analytics

Однако для работы требуются дополнительные контейнеры — в первую очередь для баз данных и вспомогательных служб. Рекомендуется использовать официальный репозиторий с примером Docker Compose:

plausible/hosting

В этом руководстве мы рассмотрим шаги для быстрого старта, проверок и базовой безопасности самохостинга.

Установка Plausible

Требования перед началом:

  • Git установлен на хосте
  • Docker (1.13+ стабильно) и Docker Compose
  • Домен или локальная запись в hosts (для тестирования)

Начните с клонирования официального репозитория конфигурации:

git clone https://github.com/plausible/hosting

Затем перейдите в папку:

cd hosting

Репозиторий содержит готовые конфигурационные файлы. Файл docker-compose.yml обычно готов к использованию: он связывает контейнеры Plausible и сервисов-зависимостей.

По умолчанию Plausible будет доступен на порту 8000 хоста. Если хотите использовать другой порт (например, 8800), найдите секцию plausible в docker-compose.yml и замените строку - 8000:8000 на - 8800:8000.

Иллюстрация: как изменить порт в docker-compose.yml для Plausible

Откройте файл plausible-conf.env в редакторе — это конфигурация приложения Plausible. В нём присутствуют настройки по умолчанию, которые задают домен сервера и создают начального администратора.

Замените значения ADMIN_USER_EMAIL, ADMIN_USER_NAME и ADMIN_USER_PWD на ваш адрес электронной почты, имя и пароль. Пароль должен содержать не менее шести символов. Установите BASE_URL на домен, где будет доступен ваш Plausible; для локальных тестов можно использовать http://localhost:8000.

Последняя важная настройка — секретный ключ для защиты системы аутентификации. Сгенерируйте случайную 64-символьную строку и добавьте её в SECRET_KEY_BASE. Вы можете воспользоваться OpenSSL:

openssl rand -base64 64

Теперь можно запускать Plausible:

docker-compose up -d

Docker загрузит образы и запустит контейнеры. На старте процесс инициализации выполняет миграции и стартовую настройку. Посмотреть ход инициализации можно через логи:

docker logs hosting_plausible_1 --follow

Скриншот логов инициализации Plausible

После появления в логах строки “migrations successful” откройте в браузере http://localhost:8000. Должен появиться экран входа в Plausible. Выполните вход под созданным аккаунтом.

Экран входа Plausible

По умолчанию приложение предлагает активировать аккаунт через код из электронной почты. В большинстве тестовых развёртываний исходящая почта не настроена, поэтому проще сразу отметить почту как подтверждённую в базе данных. Для этого выполните команду:

docker exec hosting_plausible_db_1 psql -U postgres -d plausible_db -c "UPDATE users SET email_verified = true;"

Команда выполняет SQL-запрос и снимает флаг подтверждения для всех пользователей.

Пустой дашборд Plausible до добавления сайтов

Вернитесь в браузер и обновите страницу — вы увидите пустой дашборд Plausible.

Подключение сайта к Plausible

Один Plausible-инстанс может собирать данные с множества независимых сайтов. Каждый сайт нужно зарегистрировать в панели управления Plausible и вставить JavaScript-сниппет отслеживания в HTML сайта. Минифицированный скрипт весит меньше 1 КБ.

Скриншот добавления сайта в Plausible

Нажмите кнопку “Add a website” или её локализованный эквивалент в панели. Укажите корневой домен, например example.com, без префикса www. Это позволит собирать данные и для example.com, и для www.example.com в рамках одного свойства. Выберите часовой пояс для корректной агрегации отчётов.

После добавления нажмите “Add snippet” — Plausible отобразит

Example Website

Важно: Plausible не работает с доменами localhost. Для локального тестирования можно добавить временную запись в /etc/hosts:

127.0.0.1 foobar.net

Зарегистрируйте foobar.net в Plausible и откройте его в браузере — события начнут поступать на сервер.

Когда подключение завершено, в панели сайта нажмите кнопку “Start collecting data” для перехода на дашборд сайта.

Исследование данных в Plausible

Интерфейс Plausible упрощён для быстрого получения картины по сайту. Вверху показаны ключевые метрики: просмотры страниц, уникальные посетители, показатель отказов и средняя длительность сеанса. Ниже — лидирующие страницы, внешние рефереры и типы устройств. По умолчанию диапазон дат — последние 30 дней; его можно изменить в правом верхнем углу.

Скриншот дашборда сайта в Plausible

Чтобы перейти к настройкам сайта, кликните по названию сайта в левом верхнем углу и выберите “Site settings”. Там можно управлять видимостью дашборда, генерировать публичные шеры и настраивать цели.

Раздел “Visibility” позволяет сделать дашборд общедоступным без входа в Plausible или создать уникальные ссылки для отдельных людей.

Скриншот настроек сайта в Plausible

Раздел “Goals” реализует простое отслеживание целей: указываете целевые URI, например /checkout-complete, и Plausible будет фиксировать конверсии при посещении этой страницы.

Скриншот добавления цели в Plausible

Чтобы создать цель: откройте “Goals”, нажмите “Add goal” и заполните форму с URI для отслеживания. Конверсии появятся в блоке “Goal Conversions” внизу дашборда.

Настройка почтовых уведомлений

Раздел “Email reports” позволяет подписываться на еженедельные отчёты и оповещения о всплесках трафика. Для работы почты необходимо настроить исходящую почту в plausible-conf.env.

Plausible умеет отправлять почту через SMTP или через сервис Postmark.

Для SMTP добавьте в plausible-conf.env следующие переменные:

  • MAILER_EMAIL — адрес, от которого будут уходить письма
  • SMTP_HOST_ADDR — адрес SMTP-сервера (например, localhost)
  • SMTP_HOST_PORT — порт SMTP
  • SMTP_USER_NAME — логин для SMTP
  • SMTP_USER_PWD — пароль для SMTP (если требуется)
  • SMTP_HOST_SSL_ENABLEDtrue или false — использование SSL

Если вы предпочитаете Postmark, создайте аккаунт и API-ключ, затем добавьте в конфигурацию:

MAILER_ADAPTER=Bamboo.PostmarkAdapter

и значение POSTMARK_API_KEY с вашим ключом.

После изменения конфигурации выполните:

docker-compose up -d

чтобы применить настройки и перезапустить контейнеры.

Включение данных по странам (GeoIP)

В дашборде Plausible есть виджет-карта с информацией по странам, но геолокация не включена по умолчанию — она требует внешней базы GeoLite2.

Чтобы включить геолокацию, потребуется аккаунт GeoLite2. После регистрации вы получите идентификатор аккаунта и лицензионный ключ. Вставьте эти значения в файл geoip/geoip.conf в переменные GEOIPUPDATE_ACCOUNT_ID и GEOIPUPDATE_LICENSE_KEY.

Затем запустите стек с дополнительным файлом Compose:

docker-compose -f docker-compose.yml -f geoip/docker-compose.geoip.yml up

Docker загрузит контейнер с базой GeoLite, и Plausible начнёт использовать геоданные для новых событий.

Обновление Plausible

Для обновления до новых версий выполните в каталоге hosting:

git pull

docker-compose up -d --pull

Это подтянет изменения конфигурации и образы из Docker Hub, а затем перезапустит контейнеры.


Критерии приёмки

Перед тем как считать установку и настройку завершённой, проверьте следующие пункты:

  • Веб-интерфейс Plausible доступен по указанному BASE_URL
  • Пользователь-администратор может войти без ошибок
  • События с зарегистрированного сайта приходят в дашборд (см. реальное число просмотров)
  • Email-уведомления успешно отправляются (если настроено)
  • GeoIP-карта отображает страны после включения GeoLite (новые события)
  • Бэкапы базы данных настроены и регулярно проверяются

Мини-методология тестирования и проверки работоспособности

Короткая инструкция, как проверить установку пошагово:

  1. Откройте базовый дашборд Plausible — убедитесь, что сервер отвечает.
  2. Зарегистрируйте тестовый сайт (например, foobar.net) и вставьте приведённый скрипт в секцию .
  3. Откройте сайт в браузере в режиме инкогнито и подождите 1–2 минуты.
  4. Проверьте наличие новых событий в разделе “Реальное время” или в главном дашборде.
  5. Если события не видны, проверьте логи контейнера Plausible и сетевую доступность http://localhost:8000/js/plausible.js.
  6. При настройке почты отправьте тестовое письмо через UI и проверьте поступление.
  7. После включения GeoIP проверьте, появились ли страны в карте; если нет — проверьте логи контейнера GeoIP.

Чек-листы по ролям

Администратор системы:

  • Проверить доступность сервера и статус контейнеров
  • Обновлять образы и конфигурации по расписанию
  • Проводить регулярные бэкапы баз данных
  • Контролировать доступы и ротацию паролей/секретов

DevOps / Инженер по развертыванию:

  • Настроить Docker, Docker Compose и мониторинг контейнеров
  • Настроить TLS (см. ниже)
  • Автоматизировать обновления и бэкапы
  • Настроить алерты на неудачные деплойменты

Владелец продукта / аналитик:

  • Добавлять сайты и цели в Plausible
  • Определять ключевые метрики и периоды отчёта
  • Настроить публичные отчёты или шары для заинтересованных лиц

SOP — стандартная операционная процедура быстрой установки

  1. Подготовить VM или сервер с Docker и Docker Compose.
  2. Клонировать https://github.com/plausible/hosting.
  3. Отредактировать plausible-conf.env: задать ADMINUSER*, BASE_URL, SECRET_KEY_BASE.
  4. (Опционально) Настроить SMTP или Postmark в plausible-conf.env.
  5. Запустить docker-compose up -d.
  6. Следить за логами и дождаться “migrations successful”.
  7. Войти в Plausible, создать сайт и вставить скрипт на сайт.
  8. Настроить GeoIP (при необходимости) и перезапустить стек с geoip-конфигом.
  9. Настроить HTTPS и настройку бэкапов.

Решение: самохостинг или SaaS — блок-схема

flowchart TD
  A[Нужна ли вам полная приватность и контроль?] -->|Да| B[Самохостинг]
  A -->|Нет, хочется простоты и поддержки| C[SaaS Plausible]
  B --> D{Есть ли ресурсы для поддержки?}
  D -->|Да| E[Идём самохостить: следовать SOP]
  D -->|Нет| C
  C --> F[Зарегистрироваться в Plausible.com и подключить сайт]
  E --> G[Добавить мониторинг, бэкапы и TLS]

Используйте эту простую модель: если вам важен полный контроль над данными и вы готовы обслуживать серверы, выбирайте самохостинг. Если критична простота и поддержка, выбирайте облачную версию.

Безопасность и жёсткая настройка

Рекомендации для базовой безопасности инстанса:

  • Всегда включайте TLS для доступа к панели (на уровне обратного прокси — Nginx, Traefik или облачного LB). Не оставляйте Plausible доступным только по HTTP в продакшене.
  • Храните SECRET_KEY_BASE в защищённом хранилище секретов, а не в открытом репозитории.
  • Отключите неиспользуемые сервисы и ограничьте доступ к базе данных через firewall/security group.
  • Настройте регулярные бэкапы PostgreSQL и тестируйте восстановление.
  • Обновляйте образы и зависимости оперативно; используйте автоматизированный процесс обновления и отката.
  • Примените принцип наименьших привилегий для учётных записей и API-ключей.

Резервное копирование и восстановление

Простой план бэкапа PostgreSQL:

  • Периодические дампы базы (pg_dump) на внешний хост или в облачное хранилище.
  • Инкрементальные снапшоты томов Docker (если используются Docker volumes).
  • План восстановления должен включать проверку целостности дампа: запускайте восстановление в тестовой среде раз в месяц.

Тестовые случаи и критерии приёмки

  • Тест 1: Доступ к PANEL — результат: HTTP 200 на BASE_URL. Приёмка: страница логина отображается.
  • Тест 2: Отслеживание страницы — результат: посещение тестовой страницы приводит к появлению события в дашборде в течение 2–5 минут.
  • Тест 3: Отправка почты — результат: тестовое письмо доставлено. Приёмка: входящее письмо подтверждает работу SMTP/Postmark.
  • Тест 4: GeoIP — результат: места происхождения посетителей отображаются на карте после включения GeoIP.

Миграция и совместимость

При обновлениях следите за заметками к релизу Plausible: иногда появляются изменения в структуре базы данных или требуются дополнительные зависимости. Всегда делайте бэкап перед git pull и деплоем новых образов.

Краткая инструкция по TLS (обзор)

  • Рекомендуется ставить Plausible за обратным прокси (Nginx/Traefik) и обрабатывать TLS на прокси.
  • Используйте Let’s Encrypt для автоматической выдачи сертификатов.
  • Если вы используете облачный LB, завершите TLS на LB и проксируйте трафик HTTP внутрь сети.

Глоссарий (одна строка)

  • Plausible — лёгкая приватная система веб-аналитики.
  • Docker Compose — инструмент для определения и запуска многоконтейнерных Docker-приложений.
  • GeoLite2 — база геолокации по IP (MaxMind).
  • Postmark — сервис для отправки транзакционных писем.

Частые проблемы и решения

  • Нет событий в дашборде: проверьте доступность http:///js/plausible.js из браузера, убедитесь, что домен в data-domain совпадает с зарегистрированным сайтом.
  • Почта не отправляется: проверьте параметры SMTP и логи контейнера; попытайтесь отправить почту вручную из контейнера.
  • GeoIP не работает: убедитесь, что контейнер geoip запущен и в geoip/geoip.conf корректно заполнены аккаунт и ключ.

Краткое резюме

Plausible — удобный выбор для команд, которым важна приватность и простота аналитики. Его легко развернуть с помощью Docker Compose, а минималистичный интерфейс позволяет быстро получать полезные метрики без лишнего шума. Самохостинг даёт контроль над данными, но требует от вас регулярного обслуживания, настроек безопасности и бэкапов.


Если нужно, я могу подготовить компактный сценарий развёртывания с готовыми командами для Nginx + Let’s Encrypt, примеры cron-скриптов для бэкапа PostgreSQL или шаблон playbook для Ansible.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как исправить ошибку Hulu P-DEV313
Руководство

Как исправить ошибку Hulu P-DEV313

Отключить уведомления соцсетей в Chrome
браузер

Отключить уведомления соцсетей в Chrome

Скачать Opera для Windows 7 — инструкция
Браузеры

Скачать Opera для Windows 7 — инструкция

Как выявить и закрыть процесс с высоким CPU на Mac
macOS

Как выявить и закрыть процесс с высоким CPU на Mac

Gemoo Recorder: запись и монтаж экранных видео
Видео

Gemoo Recorder: запись и монтаж экранных видео

diskonaut — визуализатор дискового пространства
Инструменты

diskonaut — визуализатор дискового пространства