Bienvenue ! Ce guide explique comment déployer le bot Discord de 3 façons différentes.
Déployer directement sur votre machine sans Docker.
- Node.js 20+ (télécharger)
- npm (installé avec Node.js)
- Un token Discord Bot valide
- L'ID du canal vocal temporaire utiliser comme salle d'attente
git clone https://github.com/votre-user/discord-bot.git
cd discord-botnpm installOuvrez config.js et remplissez :
module.exports = {
token: "votre_token_discord_ici",
tempVoiceChannelId: "votre_channel_id_ici"
};
⚠️ IMPORTANT : Ne commitez JAMAIS ce fichier avec vos vrais token !
npm start
# ou
node src/main.jsVous devriez voir dans la console :
✅ Bot connecté à Discord
Appuyez sur Ctrl + C
Si vous préférez utiliser les variables d'environnement (recommandé) :
Windows PowerShell :
$env:DISCORD_TOKEN = "votre_token"
$env:TEMP_VOICE_CHANNEL_ID = "votre_channel_id"
npm startLinux/Mac :
export DISCORD_TOKEN="votre_token"
export TEMP_VOICE_CHANNEL_ID="votre_channel_id"
npm startDéployer avec Docker sur votre machine (Windows/Mac/Linux).
- Docker Desktop (télécharger)
- Git et le repo cloné
- Token Discord et Channel ID
git clone https://github.com/votre-user/discord-bot.git
cd discord-botmodule.exports = {
token: process.env.DISCORD_TOKEN,
tempVoiceChannelId: process.env.TEMP_VOICE_CHANNEL_ID
};# .env
DISCORD_TOKEN=votre_token_ici
TEMP_VOICE_CHANNEL_ID=votre_channel_id_ici
NODE_ENV=production
⚠️ N'oubliez pas.envdans.gitignore
# Démarrer le bot
docker-compose up -d
# Voir les logs
docker-compose logs -f
# Arrêter le bot
docker-compose down# Lister les containers
docker ps
# Voir les logs
docker logs -f discord-bot
# Redémarrer
docker restart discord-bot# Voir tous les containers
docker ps -a
# Voir les images
docker images | grep discord
# Supprimer le container
docker rm discord-bot
# Supprimer l'image
docker rmi discord-bot:latest
# Nettoyer les resources inutilisées
docker system pruneDéployer automatiquement sur votre serveur Linux via Portainer.
- Portainer installé sur votre serveur (guide d'install)
- Accès à Portainer (http://votre-serveur:9000)
- GitHub repo avec votre code
- Token Discord et Channel ID (secrets)
module.exports = {
token: process.env.DISCORD_TOKEN,
tempVoiceChannelId: process.env.TEMP_VOICE_CHANNEL_ID
};services:
discord-bot:
build: .
container_name: discord-bot
restart: unless-stopped
environment:
- DISCORD_TOKEN=${DISCORD_TOKEN}
- TEMP_VOICE_CHANNEL_ID=${TEMP_VOICE_CHANNEL_ID}
- NODE_ENV=productiongit add .
git commit -m "Setup environment variables"
git push origin main-
Allez sur http://votre-serveur:9000
-
Connectez-vous
-
Stacks (menu de gauche) → + Add Stack
-
Remplissez :
- Name :
discord-bot - Build method :
Git repository - Repository URL :
https://github.com/votre-user/discord-bot.git - Repository ref :
main - Compose path :
docker-compose.yml
- Name :
-
Scroll down vers Environment variables
Cliquez + Add variable pour chaque secret :
Variable 1 :
- Name:
DISCORD_TOKEN - Value:
votre_token_discord_ici
Variable 2 :
- Name:
TEMP_VOICE_CHANNEL_ID - Value:
votre_channel_id_ici
Variable 3 :
- Name:
NODE_ENV - Value:
production
Cliquez Deploy the Stack
⏳ Portainer va :
- Clone GitHub
- Injecter les variables d'env
- Builder l'image Docker
- Lancer le container
Attendez 2-3 minutes...
- Allez dans Containers
- Le container
discord-botdoit être en status Running ✅ - Cliquez dessus → Logs pour voir les logs du bot
- Stacks →
discord-bot - Bouton Redeploy (en haut)
- Cochez Re-build image
- Cliquez Redeploy
Sans refaire tout le déploiement :
- Stacks →
discord-bot→ Edit - Modifiez les variables d'env
- Cliquez Update the Stack
Le container redémarrera avec les nouvelles variables.
Voir les logs en temps réel :
- Containers →
discord-bot - Onglet Logs (auto-refresh)
Via CLI sur le serveur :
docker logs -f discord-bot
docker ps | grep discord-bot
docker stats discord-bot| Approche | Setup | Facilité | Auto-update | Idéal pour |
|---|---|---|---|---|
| Local | 5 min | ⭐⭐⭐⭐⭐ | ❌ | Développement |
| Docker Local | 10 min | ⭐⭐⭐⭐ | ❌ | Test avant prod |
| Portainer | 20 min | ⭐⭐⭐⭐ | ✅ possible via Webhook | Production |
Vérifiez les logs :
# Local
npm start
# Docker
docker logs -f discord-bot
# Portainer
Dans l'interface → Containers → discord-bot → LogsErreurs courantes :
- ❌
DISCORD_TOKEN is not defined→ Token manquant ou vide - ❌
Cannot find module→ Dépendances manquantes (npm install) - ❌
Invalid channel ID→ Channel ID incorrect
- Ouvrez Docker Desktop depuis le menu Démarrer
- Attendez que l'icône Docker en bas à droite montre "Docker is running"
- Relancez votre commande
- ✅ Ne commitez JAMAIS
config.jsavec vos vrais tokens - ✅ Utilisez les variables d'environnement pour les tokens
- ✅ Gardez votre token Discord confidentiel
- ✅ Utilisez
.gitignorepour.env
- ❌ Token Discord en dur dans le code
- ❌ Token dans GitHub Issues/Discussions
- ❌ Pousser
.envsur GitHub - ❌ Partager votre token
Si vous avez des questions ou des problèmes :
- Vérifiez les logs (voir section "Problèmes courants")
- Consultez la documentation officielle des outils utilisés
- Vérifiez que les prérequis sont installés
Dernière mise à jour : 11 janvier 2026