Skip to content

prepas-mpi/mp2i-discord-bot

Repository files navigation

Prépas MP2I/MPI

Ce bot discord a pour but d'ajouter des fonctionnalités au serveur discord Prépas MP2I/MPI.

Installation

Ce projet utilise uv comme gestionnaire de paquets Python et pypy pour l'implémentation de Python 3.11. Le bot discord utilise une base de données PostgreSQL afin de sauvegarder des données nécessaires à son fonctionnement.

Natif

Une fois le dépôt cloné et les dépendances installées, synchronisez les dépendances du projet avec la commande

uv sync

Créez les fichiers de configuration et d'environnement de variables à partir des fichiers d'exemples puis modifiez-les pour votre utilisation

cp .env{.example,}; cp config.toml{.example,}
vim .env config.toml # ou autre éditeur de texte préféré

Vous pouvez dès lors démarrer le bot discord via la commande

uv run -m mp2i

Docker

Le bot discord peut également être démarré dans un container. La base de données est alors directement intégrée dans un autre container relié à celui du bot discord. Vous pouvez les démarrer avec la commande

Votre installation de Docker peut requérir un accès administrateur à la machine, vous devez alors soit être dans le groupe docker soit rajouter sudo devant la commande. Cette note est valable pour toutes les commandes Docker.

docker compose up

L'ajout de l'option -d permet de détacher l'exécution du terminal. Auquel cas, il est possible d'arrêter les containers avec la commande

docker compose down

Pour démarrer le bot discord avec de nouveaux changements effectués, il est nécessaire de recréer l'image Docker. Pour ce faire, il faut rajouter l'option --build lors du démarrage des containers. La commande suivante recrée l'image Docker et détache l'exécution des containers du terminal.

docker compose up --build -d

Serveur Public de Tests

Un serveur public de tests est accessible par l'invitation : discord[dot]gg/zAEBkeA5EU

About

Bot Discord du serveur Prépas MP2I

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published