EQVPS
КабинетНачать

VPS для Plausible: веб-аналитика без cookie

Своя Plausible Community Edition: приватная статистика сайта без cookie. Требования, установка в Docker с HTTPS и сколько памяти нужно ClickHouse.

Типичная аналитика просит у посетителей согласие, отправляет их данные третьей стороне и показывает дашборд с двумя сотнями отчётов, которые вы никогда не откроете. Plausible делает наоборот: один маленький скрипт, никаких cookie, одна страница статистики, которую реально читать. Community Edition бесплатна для самостоятельной установки — нужен лишь VPS со своим IP.

Зачем держать у себя

  • Данные остаются на вашем сервере. Никакая третья сторона не собирает просмотры страниц ваших посетителей.
  • Без cookie. Уникальные посетители считаются по хешу, который меняется ежедневно, полные IP не хранятся — обычно это позволяет убрать cookie-баннер.
  • Крошечный скрипт. Счётчик меньше 1 КБ — в отчёте о скорости страницы его не видно.
  • Фиксированная цена. Никакой оплаты за просмотры. Всплески трафика ничего не стоят.

Что нужно

Plausible работает в трёх контейнерах: само приложение, PostgreSQL для аккаунтов и настроек и ClickHouse для событий. Прожорлив по памяти именно ClickHouse.

  • Комфортно — 4 ГБ RAM: Small-IP (4 vCPU, 4 ГБ, 35 ГБ, $16/мес). Запустится и на 2 ГБ (Micro-IP), но фоновые слияния дают пики памяти, так что с маленьким сервером добавьте своп.
  • Выделенный IPv4 и домен. Счётчик и дашборд живут на https://stats.example.com. NAT-тарифы не принимают входящий 443.

Установка (Ubuntu 24.04, Docker)

apt update && apt install -y docker.io docker-compose-v2 git
git clone https://github.com/plausible/community-edition plausible-ce
cd plausible-ce
# check out the newest release tag
git checkout "$(git tag --sort=-v:refname | head -1)"

Создайте файл окружения — Plausible умеет сам получить сертификат Let's Encrypt:

cat > .env <<EOF
BASE_URL=https://stats.example.com
SECRET_KEY_BASE=$(openssl rand -base64 48)
HTTP_PORT=80
HTTPS_PORT=443
EOF

cat > compose.override.yml <<'EOF'
services:
  plausible:
    ports:
      - 80:80
      - 443:443
EOF

docker compose up -d

Сначала направьте A-запись stats.example.com на VPS, чтобы запрос сертификата прошёл. Потом откройте адрес, создайте аккаунт и добавьте сайт. Источник истины по новым переменным — README репозитория: пробегитесь по нему при обновлениях.

Добавьте скрипт на сайт

<script defer data-domain="example.com" src="https://stats.example.com/js/script.js"></script>

Некоторые блокировщики режут всё, что называется «analytics»; отдача скрипта с вашего поддомена уже обходит большую часть таких случаев.

Поддержка

  • Бэкапы. Статистика лежит в двух Docker-томах. Managed Backups ежедневно копируют весь сервер ($2/мес, бесплатно на годовых тарифах); для надёжности дополнительно выгружайте PostgreSQL через pg_dump из контейнера.
  • Обновления. git pull, переключитесь на новый тег, docker compose pull && docker compose up -d. Перед мажорными версиями читайте заметки к релизу.
  • Своп на серверах с 2 ГБ — своп-файл на 2 ГБ не даст убить слияния ClickHouse.

Чего в ней нет

Plausible сознательно собирает меньше. Никаких путей отдельного пользователя, никакого кросс-девайс трекинга, никаких интеграций с рекламными платформами. Если маркетинг живёт внутри инструментов рекламной сети, этих отчётов вам будет не хватать. Большинству сайтов, которым надо знать, какие страницы работают и откуда приходят люди, этого объёма данных ровно хватает — и никому не нужно жать «Принять».

Связанное

Готовы развернуть? Оплата криптой, без KYC — сервер за минуту.

Развернуть →

Частые вопросы

Нужен ли для Plausible cookie-баннер?

Plausible не ставит cookie и не хранит персональные данные и полные IP-адреса — посетители считаются по хешу, который меняется каждый день. Чаще всего баннер согласия поэтому не нужен, но окончательно это зависит от вашей юрисдикции и от того, что ещё грузит ваш сайт.

Сколько RAM нужно своей Plausible?

События Plausible хранит в ClickHouse, и памяти хочет именно он. Стартует на 2 ГБ, но фоновые слияния данных дают пики выше. 4 ГБ (Small-IP) — комфортный размер для нескольких сайтов с ровным трафиком.

Можно ли на NAT-тарифе?

Нет. Скрипт счётчика и дашборд отдаются по HTTPS с вашего домена, значит сервер должен принимать входящий 443. Для этого нужен тариф с выделенным IP.

Сколько места занимают данные?

Совсем мало на событие — ClickHouse сильно сжимает. Сайт с десятками тысяч визитов в месяц занимает заметно меньше гигабайта в год. Docker-образы ещё долго будут весить больше данных.

Как обновлять?

Подтяните новый релиз в репозитории community-edition, затем 'docker compose pull' и 'docker compose up -d'. Сначала прочитайте заметки к релизу — мажорные версии иногда требуют шага миграции.

Комментарии

Пока нет комментариев. Будьте первым.

Оставить комментарий

Комментарии проходят модерацию перед публикацией.