Installation de Glitchtip
Cet article est une procédure détaillée pour installer un serveur Glitchtip de zéro, sans passer par des conteneurs Docker
GlitchTip est une alternative Open Source à Sentry. La partie frontend est en nodejs
, le backend en python
basé sur le gestionnaire de dépendance poetry
et il est exécuté avec le serveur HTTP gunicorn
. Quand à la gestion des tâches, elle est déléguée à celery
.
La version de Glitchtip choisie est la 2.0.7
, au delà des erreurs de dépendances NodeJS sont présentes
NB : les valeurs suivantes sont à remplacer :
<DOMAIN>
/<PGSQL_PASSWORD>
/<SECRET_KEY>
Prérequis
- Debian 11 Bullseye
- 4 CPU
- 4 Go de RAM
- Disque : très léger pour Glitchtip (
/opt
). Prévoir de l’espace pour la base postgresql sur le long terme (/var/lib/postgresql/13/main
) - Accès root
- Serveur de mail en send-only, exemple de configuration : https://www.cloudsigma.com/installing-and-configuring-postfix-as-a-send-only-smtp-server-on-ubuntu-20-04/
Installation
Ajout du repo : nodejs (LTS)
CF : https://github.com/nodesource/distributions/blob/master/README.md
Installation des paquets systèmes
Configuration de la base de données postgresql
Installation de glitchtip
Création d’un utilisateur & d’un dossier dédié
NB : toutes les commandes suivantes sont exécutées avec l’utilisateur
glitchtip
, i.e. :su - glitchtip
Définition de l’environnement
Création d’un virtualenv python
Installation : frontend (nodejs)
Installation : backend (python)
Création du compte admin
NB : La commande suivante va demander d’entrer le mot de passe administrateur
Création des démons systèmes
NB : toutes les commandes suivantes sont exécutées en
root
Création des dossiers de logs & runs
Ficher d’environnement pour les démons systèmes
Démon web (gunicorn)
Celery executor
Lancement des démons systèmes
Création de la configuration logrotate
Configuration de nginx
en reverse proxy
Création de la configuration
Ajout d’un SSL
Optionnel. CF : https://www.nginx.com/blog/using-free-ssltls-certificates-from-lets-encrypt-with-nginx/
Accessibilité
Le site sera ainsi disponible sous l’url : http://<DOMAIN>
, ou https://<DOMAIN>
si un certificat SSL a été déployé
De même les logs applicatifs seront disponibles aux chemins suivants :
/var/log/glitchtip/celery-beat.log
/var/log/glitchtip/celery-worker.log
/var/log/glitchtip/gunicorn-access.log
/var/log/glitchtip/gunicorn-error.log
/var/log/nginx/reverse-access.log
/var/log/nginx/reverse-error.log