GlitchTip вместо Sentry: Устанавливаем свой сервер для отслеживания ошибок
Опубликовано 13 марта 2025 AntonSeagull — 2 min
Если вам нужно отслеживать ошибки в ваших приложениях, но вы не хотите использовать платный Sentry, отличной альтернативой станет GlitchTip. Это open-source система для сбора ошибок и логирования событий, которую можно развернуть на своем сервере.
В этой статье я расскажу, как установить GlitchTip на сервер с Ubuntu 22.04, настроит веб-прокси на Nginx с SSL. В результате вы получите полностью рабочий сервер мониторинга ошибок, который не зависит от сторонних сервисов.
❗ Перед началом у вас уже должен быть:
- Сервер с Ubuntu 22.04 (VDS/VPS)
- Домен, привязанный к серверу
Если у вас еще нет сервера, советую арендовать VDS на Timeweb Cloud, где можно быстро развернуть сервер по доступной цене: 👉 Перейти на Timeweb Cloud
1. Установка Docker и Docker Compose
Обновим систему и установим необходимые пакеты:
sudo apt update && sudo apt upgrade -y
sudo apt install docker.io docker-compose -y
Проверим, что Docker и Docker Compose установлены:
docker --version
docker-compose --version
2. Создание конфигурации docker-compose.yml
Создадим папку для GlitchTip в удобном месте, например, /opt/glitchtip/:
sudo mkdir -p /opt/glitchtip
cd /opt/glitchtip
Скачиваем образец файла и редактируем его:
sudo wget https://glitchtip.com/assets/docker-compose.sample.yml -O docker-compose.yml
Открываем файл для редактирования:
sudo nano docker-compose.yml
Редактируем переменные среды:
x-environment: &default-environment
DATABASE_URL: postgres://postgres:postgres@postgres:5432/postgres
SECRET_KEY: change_me_to_something_random # замените на случайный ключ
PORT: 8000
EMAIL_URL: smtp://email:password@smtp_url:port
GLITCHTIP_DOMAIN: https://yourdomain.com # замените на ваш домен
DEFAULT_FROM_EMAIL: your@email.com
CELERY_WORKER_AUTOSCALE: "1,3"
Сохраняем файл (Ctrl + X, затем Y и Enter)
3. Запуск контейнеров
Запускаем GlitchTip:
sudo docker-compose up -d
Проверяем, что сервисы работают:
sudo docker ps
Если всё корректно, GlitchTip теперь доступен на http://yourdomain.com:8000.
4. Настройка Nginx
Установка Nginx
sudo apt install nginx -y
Создаем конфигурационный файл:
sudo nano /etc/nginx/sites-available/glitchtip
Добавляем следующий конфиг:
yourdomain.com - заменить на ваш домен.
server {
server_name yourdomain.com;
access_log /var/log/nginx/access.log;
client_max_body_size 40M;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Сохраняем и закрываем файл (Ctrl + X, затем Y и Enter).
Активируем конфигурацию:
sudo ln -s /etc/nginx/sites-available/glitchtip /etc/nginx/sites-enabled/
Перезапускаем Nginx:
sudo systemctl restart nginx
5. Настройка SSL с Let's Encrypt
Устанавливаем Certbot:
sudo apt install certbot python3-certbot-nginx -y
Запускаем настройку SSL:
yourdomain.com - заменить на ваш домен.
sudo certbot --nginx -d yourdomain.com
Следуем инструкциям
Проверяем статус SSL:
sudo certbot renew --dry-run
Перезапускаем Nginx:
sudo systemctl restart nginx
Теперь GlitchTip доступен по https://yourdomain.com.
6.Создание суперпользователя через консоль
Пользователь по умолчанию НЕ создаётся, его нужно создать вручную. Рекомендую использовать createsuperuser через команду Docker.
docker-compose exec web ./manage.py createsuperuser
После этого система попросит ввести: • Email (логин) • Имя • Пароль
После успешного создания можно войти в систему.
7. Завершающие настройки
Проверяем логи работы GlitchTip:
sudo docker-compose logs -f
Чтобы GlitchTip автоматически запускался после перезагрузки сервера, включаем автозапуск Docker:
sudo systemctl enable docker