Bot Discord

lessy69

New Member
#1
Bonjour,

Est ce que PlanetHoster est adapté a l’hébergement d'un bot discord?

Après la création d'un environnement virtuel python, l'installation des divers paquets requis et le transfère de mes fichiers, impossible de maintenir le bot en ligne voir de le connecter.
La connexion se fait de deux façon:
- utilisation de l'url paramétré : fini en erreur parce que pas de page web et du coup deco.
- avec une connexion ssh : python main.py qui se coupe au final lorsque la connexion ssh est terminé.

J'ai paramétré passenger / wsgi.py de cette façon.

Python:
import imp
import os
import sys

sys.path.insert(0, os.path.dirname(__file__))

# le fichier a run est main.py a la racine du projet
wsgi = imp.load_source('wsgi', 'main.py')
application = wsgi.app
D’où ma question:
Est ce que PlanetHoster est adapté a l’hébergement d'un bot discord?
- Si oui, qu'est ce que j'ai loupé ?
- Comment avoir bot discord toujours présent sur le serveur ?
- Est ce un pb de fichier main?


Le fichier main.py

Python:
import sys
import asyncio

import discord
from discord.ext import commands
from dotenv import load_dotenv

load_dotenv()

intents = discord.Intents.default()
intents.members = True
intents.message_content = True

bot = commands.Bot(command_prefix='!', intents=intents)

cog_files = ['bot_one', 'bot_two', 'bot_games']

async def load_extensions():
    for cog_file in cog_files: 
        await bot.load_extension(cog_file)

async def main():
    async with bot:
        await load_extensions()
        await bot.start(os.getenv("TOKEN"))

asyncio.run(main())
 

marckisscool

Active Member
#2
Bonjour,

Planethoster n'est pas en cause, c'est plutôt l'utilisation basique d'un script shell pour garder un process en machine, vous avez 2 possibilités:
- soit de faire un daemon fantôme, daemon perpétuel qui s'autorelance lui même quand il tombe (fortement déconseillé)
- soit de lancer l'exécution de votre shell "python main.py " en se détachant de la session en prefixant la commande par nohup (https://phoenixnap.com/kb/linux-nohup)

Attention dans les 2 cas cela nécessite de bonne connaissance,
puisque le premier cas peut poser des problèmes de ressources et de reboot de la machine (+ failles de secu)
puisque le second cas sera en roue libre ou seul un kill propriétaire ou admin sonnera sa fin, il faut donc une gestion du process afin d'éviter les désagréments.
 
Haut