Installation
Un serveur, Docker, un nom de domaine : une vingtaine de minutes, étape par étape. Chaque installation est indépendante — ton bot, ta base, tes données, sans lien avec l'auteur ni avec une autre instance. Tu en es le seul administrateur : aucun compte à créer, tu te connectes avec ton compte Discord.
English version: Installation.
Ce que tu vas mettre en place

Trois choses à relier : ton application Discord (étape 3), ton serveur qui fait tourner le bot (étapes 1, 4 et 5) et ton domaine qui y mène (étape 2).
Ce qu'il te faut
| Pourquoi | |
|---|---|
| Un serveur Linux (VPS, 1 Go de RAM suffit) | Le bot tourne en continu ; une machine chez toi convient aussi si elle reste allumée |
Un nom de domaine (ou un sous-domaine, comme tickets.example.com) | Discord n'autorise la connexion au dashboard qu'en HTTPS sur une adresse publique |
| Les ports 80 et 443 ouverts | Pour le certificat HTTPS automatique |
| Un compte Discord | Il deviendra le propriétaire de ton instance |
Étape 1 — Installer Docker
Sur le serveur, en SSH. La méthode officielle, pour Debian ou Ubuntu :

curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER # puis déconnecte-toi et reconnecte-toiVérifier
docker compose version doit répondre par un numéro de version. Autres systèmes : docs.docker.com/engine/install.
Étape 2 — Faire pointer le domaine
Chez ton fournisseur de domaine (OVH, Gandi, Cloudflare, Ionos…), ouvre la zone DNS et ajoute un enregistrement A vers l'adresse IP du serveur :

| Type | Nom | Valeur |
|---|---|---|
A | tickets (pour tickets.example.com) | l'adresse IPv4 du serveur |
Vérifier
ping tickets.example.com doit répondre avec l'adresse de ton serveur. La propagation prend de quelques minutes à une heure.
Étape 3 — Créer le bot sur Discord
Ouvre le portail développeur Discord et connecte-toi avec le compte qui administrera l'instance.
Créer l'application
- New Application → donne-lui le nom de ton bot → Create.
- Page General Information : copie l'Application ID.

Le bot
- Onglet Bot :
- Reset Token → copie le token (il ne sera plus jamais affiché) ;
- décoche Public Bot : toi seul pourras inviter le bot ;
- dans Privileged Gateway Intents, active Server Members Intent et Message Content Intent, puis Save Changes.

La connexion au dashboard
- Onglet OAuth2 :
- Reset Secret → copie le Client Secret ;
- dans Redirects, Add Redirect :
https://tickets.example.com/api/auth/discord/callback(avec ton domaine, cette fin exactement) → Save Changes.

Tu as maintenant trois valeurs : l'Application ID, le token et le Client Secret.
Ne partage jamais le token ni le Client Secret
Ils donnent le contrôle de ton bot. S'ils fuient : Reset Token / Reset Secret dans le portail, puis relance scripts/setup.sh.
Étape 4 — Installer et configurer
git clone https://github.com/LuquyPest/Bot-ticketting.git
cd Bot-ticketting
scripts/setup.shLe script pose quelques questions et génère tout le reste : mots de passe, clés de chiffrement, clés des notifications. Le token et le Client Secret sont saisis sans s'afficher.

| Question | Réponse |
|---|---|
| HTTPS | 1 (Caddy inclus) dans la plupart des cas. 2 si tu as déjà un Traefik, 3 si tu as ton propre reverse proxy |
| Sauvegarder chaque nuit | o : une sauvegarde chiffrée de toutes les bases, chaque nuit, dans backups/ |
Tout est écrit dans le fichier .env, privé (lisible par toi seul). Garde-en une copie hors du serveur : il contient les clés qui déchiffrent les transcripts et les sauvegardes.
Étape 5 — Démarrer
docker compose pull && docker compose up -d
docker compose logs -f botDocker télécharge l'image publiée, démarre la base, Redis, le bot, Caddy et la sauvegarde. Le bot vérifie sa configuration et se connecte à Discord :

« Connecté en tant que » : c'est bon. Ctrl+C pour quitter les logs (le bot continue de tourner).
Si ça ne démarre pas
Le message d'erreur dit ce qui manque. Les cas courants sont dans Problèmes fréquents.
Étape 6 — Se connecter
Ouvre https://tickets.example.com (la première fois, le certificat HTTPS peut prendre une minute) et clique Connexion avec Discord, avec le compte propriétaire de l'application.

Le dashboard porte le nom et l'avatar de ton bot. Tu es reconnu comme propriétaire de l'instance.
Étape 7 — Inviter le bot sur ton serveur
La page Mes serveurs liste les serveurs Discord où tu as la permission Gérer le serveur. Clique Inviter le bot sur le tien et valide dans la fenêtre Discord.

Le serveur est prêt dès que le bot arrive : tu en es fondateur et tu reçois un MP avec le lien du dashboard. Clique Accéder.
Étape 8 — Régler l'essentiel
Paramètres → Rôles d'accès : choisis les rôles Discord de ton staff et les catégories où ranger les tickets.

Puis envoie un message privé au bot depuis un autre compte : le ticket apparaît dans Tickets et dans la catégorie « Ouvert » de ton serveur. C'est installé.
La suite — sujets, messages, grades, FAQ, panels : Premiers pas.
Au quotidien
| Action | Commande |
|---|---|
| Mettre à jour | docker compose pull && docker compose up -d — Mises à jour |
| Sauvegarder maintenant | scripts/backup.sh — Sauvegardes |
| Restaurer | scripts/restore.sh backups/ticketbot-<date>.sql.gz.enc |
| Voir les logs | docker compose logs -f bot |
| Redémarrer le bot | docker compose restart bot |
| Tout arrêter | docker compose down (les données restent) |
| Rester sur une version | TICKETBOT_VERSION=v3.0.4 dans .env au lieu de latest |
Installer sans le script
Copie .env.example en .env et remplis-le : chaque variable y est commentée, et toutes sont décrites dans Configuration. Génère chaque secret avec openssl rand -hex 32.
Utiliser ton propre reverse proxy (Nginx, Traefik…)
Avec le choix 3, le dashboard écoute sur 127.0.0.1:3000 : fais pointer ton proxy dessus. Pour Nginx, ajoute proxy_buffering off; (temps réel). Avec un Traefik existant (choix 2), le bot rejoint le réseau Docker proxy avec les entrypoints web / websecure et le résolveur letsencrypt : adapte docker-compose.traefik.yml si les tiens s'appellent autrement.