← Retour au CV Voir le projet
Projet personnel

Bot Discord dans Docker
sur NAS Synology

Ce projet personnel consiste à concevoir, développer et héberger un bot Discord dans un conteneur Docker sur un NAS Synology. L’objectif était de mettre en place un service autonome, accessible en permanence, avec un environnement de développement pratique grâce à une connexion SSH et au travail à distance depuis Visual Studio Code.

NAS Synology DS415+ Docker SSH Visual Studio Code Bot Discord Projet personnel
Hébergement
Exécution du bot dans un conteneur Docker sur un NAS Synology
Développement
Connexion SSH au NAS et administration du projet avec Visual Studio Code
Fonctions
Commandes fun, modération, utilitaires et modes personnalisés autour des chats et des pingouins
Présentation du projet
J’ai réalisé ce projet pour concevoir un bot Discord personnalisé, le déployer dans un environnement conteneurisé et le faire tourner sur mon NAS Synology. L’intérêt du projet était double : d’un côté, développer un bot avec des commandes utiles et originales ; de l’autre, apprendre à gérer un hébergement propre, distant et persistant, dans une logique proche d’un petit service en production.

Ce projet m’a permis de travailler sur l’organisation du bot, le déploiement avec Docker, la maintenance sur un NAS personnel, ainsi que l’administration à distance en SSH via Visual Studio Code.
Objectifs
  • Créer un bot Discord fonctionnel et personnalisé
  • Déployer le service dans Docker sur un NAS Synology
  • Travailler à distance en SSH avec Visual Studio Code
  • Organiser les commandes par modes et catégories
  • Mettre en place une solution stable et réutilisable
Infrastructure mise en place
Machine hôte NAS Synology utilisé comme plateforme d’hébergement du projet.
Conteneurisation Le bot est exécuté dans Docker afin d’isoler le service et faciliter son déploiement.
Administration distante Connexion SSH au NAS pour accéder aux fichiers, exécuter les commandes nécessaires et maintenir le projet.
Éditeur Utilisation de Visual Studio Code à distance pour modifier le code et travailler plus confortablement.
Compétences mobilisées
Docker NAS Synology SSH VS Code Remote Organisation de projet Déploiement d’un service Gestion de commandes Maintenance distante Administration système
Fonctionnalités du bot
01

Modes personnalisés

Le bot propose plusieurs univers de commandes, avec un mode chat et un mode pingu, chacun possédant ses commandes dédiées.

02

Commandes fun

Envoi de contenus thématiques, citations, faits, noms aléatoires, quiz, blagues et interactions entre utilisateurs.

03

Commandes de modération

Gestion du salon et des membres avec des commandes comme ban, kick, mute, unmute, lock, unlock, purge, slowmode ou massmove.

04

Utilitaires

Fonctions complémentaires comme l’affichage d’avatar, la traduction, des informations serveur ou utilisateur, et un classement d’activité.

Exemples de commandes
  • Mode chat : !meow, !catfact, !catquote, !oracle
  • Mode pingu : !nopnop, !pinguquote, !pingufact, !oracle
  • Modération : !ban, !kick, !mute, !lock, !purge
  • Utilitaires : !avatar, !translate, !userinfo, !serverinfo
Le bot a été pensé comme un projet évolutif, avec une structure permettant d’ajouter de nouvelles commandes et de nouveaux modes.
Développement et déploiement
A

Connexion SSH au NAS

Le NAS est administré à distance en SSH, ce qui permet d’accéder à l’environnement de travail et au projet sans passer uniquement par l’interface web.

B

Travail depuis Visual Studio Code

Le projet peut être modifié directement à distance dans Visual Studio Code, ce qui facilite l’édition du code, la gestion des fichiers et le suivi du développement.

C

Exécution dans Docker

Le bot est lancé dans un conteneur afin de séparer proprement l’application de l’hôte et rendre le déploiement plus simple à reproduire.

D

Maintenance et évolution

Cette approche permet de faire évoluer le bot plus facilement, de corriger des commandes, d’ajouter des fonctionnalités et de maintenir un service disponible sur le long terme.

Illustrations du projet
Bilan
Ce projet m’a permis d’apprendre à relier développement applicatif et hébergement réel sur un équipement personnel. Il met en avant des compétences utiles en administration, accès distant, conteneurisation, organisation de projet et déploiement d’un service. C’est également un bon exemple de projet personnel concret, mêlant technique, autonomie et maintenance dans la durée.