Установка аналитики Umami на свой сервер с FastPanel

В этой статье мы разберем пошаговый процесс установки Umami — простой, быстрой и конфиденциальной альтернативы Google Analytics и Яндекс Метрики. Мы будем использовать FastPanel для управления доменом и Dockerless установку (напрямую через Node.js) для максимальной производительности.

Для начала ответим на вопрос — зачем это надо?

Google Analytics проблематично использовать в России из-за ФЗ-152, штрафы там настолько большие, что микро-бизнес гарантированно загнется от одного такого.

Яндекс-метрика — вы точно хотите кормить Яндекс вашими данными и данными ваших users? Монополисты в России и так уже знают больше про вас, чем ваша жена/муж/любовник(-ца).

Umami — отличная система сбора web-аналитики, которая заменяет ЯД и AG на 80% (как в Паретто), устанавливается очень просто и часто, не блокируется Adblock потому-что соотвествуют GDRP. Именно эта система установлена на fuckbigbro.

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

  • Сервер (VPS/VDS) с операционной системой Ubuntu (в примере используется Ubuntu 24).
  • Установленная панель управления FastPanel.
  • Доступ к терминалу (SSH).

Шаг 1: Настройка домена в FastPanel (Reverse Proxy)

Перед тем как работать с консолью, подготовим окружение в панели управления.

  1. Зайдите в FastPanel.
  2. Создайте новый сайт (домен), на котором будет располагаться аналитика (например, stats.yourdomain.com).
  3. В настройках сайта перейдите в раздел «Настройки» (Settings) -> «HTTPS» и обязательно выпустите бесплатный SSL сертификат Let’s Encrypt.
  4. Перейдите в раздел «Ручная настройка» конфигурационных файлов или найдите меню «Проксирование». Вам нужно настроить Обратный прокси (Reverse Proxy).
  5. В качестве адреса бэкенда укажите:
    http://localhost:3001

Это скажет веб-серверу (Nginx), что все запросы с этого домена нужно перенаправлять на порт 3001, где будет работать наше приложение.

Шаг 2: Подготовка серверного окружения (Node.js и PNPM)

Umami — это современное приложение на JavaScript, поэтому нам потребуется свежая версия Node.js. Мы используем менеджер версий nvm, чтобы избежать конфликтов.

Подключитесь к серверу по SSH и выполните следующие команды:

1. Установка NVM (Node Version Manager):

# Скачиваем и запускаем установщик
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash

# Активируем nvm без перезагрузки терминала
\. "$HOME/.nvm/nvm.sh"

2. Установка Node.js:
В данном примере мы используем новейшую версию.

# Установка 25-й версии Node.js
nvm install 25

# Проверка корректности установки (должно вывести v25.x.x)
node -v

3. Установка пакетного менеджера PNPM:
Umami рекомендует использовать pnpm для быстрой установки зависимостей.

# Активируем встроенный Corepack
npm install -g corepack

# Включаем pnpm
corepack enable pnpm

# Проверяем версию
pnpm -v

Шаг 3: Настройка базы данных PostgreSQL

Umami хранит все данные в базе. Нам нужно создать пользователя и саму БД.

1. Входим в PostgreSQL:

sudo -u postgres psql

2. Создаем пользователя и базу данных:
Выполните следующие SQL-команды (не забудьте заменить 'your_password' на надежный пароль):

-- Создаем пользователя
CREATE USER myuytegeda WITH PASSWORD 'your_password';

-- Создаем базу данных и назначаем владельца
CREATE DATABASE myuytegeda_db OWNER myuytegeda;

-- Выдаем все права на базу пользователю (для надежности)
GRANT ALL PRIVILEGES ON DATABASE myuytegeda_db TO myuytegeda;

-- Выход из консоли PostgreSQL
\q

Проверка: Вы можете проверить подключение командой:
psql -U myuytegeda -d myuytegeda_db -h localhost

Шаг 4: Установка и сборка Umami

Теперь перейдем непосредственно к коду аналитики.

1. Скачивание исходного кода:
Перейдите в корневую директорию вашего сайта (ту, которую создала FastPanel, обычно это /var/www/имя_пользователя/data/www/ваш_домен).

Если папка пуста, клонируйте репозиторий:

git clone https://github.com/umami-software/umami.git .

Примечание: Точка в конце команды клонирует файлы прямо в текущую папку. Если файлы скачались в подпапку umami, переместите их в корень командой mv umami/* . и mv umami/.* ..

2. Настройка окружения (.env):
В корне сайта создайте файл .env. В нем мы укажем настройки подключения к базе и порт.

nano .env

Вставьте туда следующее содержимое:

DATABASE_URL=postgresql://myuytegeda:your_password@localhost:5432/myuytegeda_db
PORT=3001

(Замените your_password на пароль, который вы задали в Шаге 3).

3. Установка зависимостей и сборка:

# Устанавливаем библиотеки
pnpm install

# Собираем проект (включает миграции базы данных)
pnpm build

Шаг 5: Запуск и настройка автозагрузки (PM2)

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

1. Установка PM2:

npm install pm2 -g

2. Запуск Umami через PM2:
Мы явно указываем порт перед запуском, чтобы убедиться, что приложение «подхватит» его, и даем имя процессу.

export PORT=3001
pm2 start pnpm --name umami -- start

3. Сохранение списка процессов для автозагрузки:

pm2 startup
# Скопируйте и выполните команду, которую выведет терминал
pm2 save

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

Шаг 6: Финальные штрихи

  1. Откройте ваш домен в браузере (по https). Вы должны увидеть экран входа Umami.
  2. Стандартные данные для входа:
    • Логин: admin
    • Пароль: umami
  3. Важно: Сразу после входа перейдите в настройки, создайте нового администратора со своим логином и сложным паролем, залогиньтесь под ним и удалите дефолтного пользователя admin. Это критически важно для безопасности!

Статья и картинка созданы с VEGA

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Политика обработки персональных данных