Alojar un bot de Discord gratis: tutorial de Python y Node.js
Crear el bot, copiar el token, elegir discord.py o discord.js, subir el código y leer los logs: los pasos para mantener un bot de Discord 24/7 sin pagar.
Para alojar un bot de Discord gratis y 24/7, cree el bot en el Discord Developer Portal, copie su token y despliegue su código discord.py o discord.js en un proveedor que lo mantenga encendido por usted. En ACLClouds, la oferta Free ejecuta un bot sin tarjeta bancaria, con 315 MB de RAM y una renovación gratuita cada 4 días. Estos son todos los pasos, desde la creación del bot hasta el primer comando /hello.
- El token se copia una sola vez en la pestaña Bot del Discord Developer Portal.
- El código lee el token en la variable DISCORD_TOKEN, nunca escrito directamente en un archivo.
- La oferta Free de ACLClouds aloja 1 bot de Node.js o Python con 315 MB de RAM, sin tarjeta bancaria.
- La renovación es gratuita cada 4 días, desde la página del bot.
Crear el bot en Discord
Abra el Discord Developer Portal, cree una aplicación y abra la pestaña Bot. Haga clic en Reset Token y copie el token: Discord solo lo muestra una vez. En la pestaña OAuth2, marque los scopes bot y applications.commands, genere el enlace de invitación y añada el bot a su servidor.
- El token da acceso completo al bot: no lo publique nunca, ni en el código ni en una captura.
- Active Message Content Intent solo si el bot lee el texto de los mensajes (comandos con prefijo).
- Los comandos slash, como /hello, no necesitan este intent.
Elegir Python o Node.js
Al contratar la oferta Free, elija el entorno Node.js para discord.js o Python para discord.py. El bot arranca con un proyecto de ejemplo que responde a /hello: así comprueba que todo funciona antes de subir su propio código. Después puede cambiar la versión en el panel: Node.js 20, 22 o 24, Python 3.11, 3.12 o 3.13.
- Node.js: un package.json con discord.js en las dependencias y un script start.
- Python: un requirements.txt con discord.py y el archivo principal, por ejemplo bot.py.
- Guías detalladas: crear un bot de Node.js y alojar un bot de Python.
Añadir el token fuera del código
Su código lee el token en la variable de entorno DISCORD_TOKEN: process.env.DISCORD_TOKEN en Node.js, os.environ["DISCORD_TOKEN"] en Python. Si la variable está vacía, la consola del bot muestra una tarjeta «Token del bot»: pegue ahí el token, se guarda y el bot se reinicia. También puede introducirlo en la pestaña Inicio.
- Un valor que se parezca al ID de la aplicación o al secreto de cliente se señala antes de guardarlo.
- Se rechaza un token pegado por error en el campo del nombre de una variable.
- Más detalles en la guía para guardar tokens y variables secretas.
Subir su código
Sustituya el proyecto de ejemplo por el suyo desde la pestaña Archivos o por SFTP. Cada bot tiene su propio acceso SFTP, que aparece en la pestaña Ajustes: host, puerto 2222, usuario y contraseña, para introducir en FileZilla o WinSCP con el protocolo SFTP.
- No suba node_modules ni .venv: las dependencias se instalan en el servidor.
- Una subida puede llegar a 100 MB en la oferta Free.
- Si no se encuentra el archivo de inicio, la consola lo busca en las subcarpetas y propone corregir la ruta con un clic.
Iniciar y leer los logs
Inicie el bot desde la consola. Con el proyecto de ejemplo, la línea «Logged in as» seguida del nombre del bot confirma la conexión a Discord. Después escriba /hello en su servidor: un comando global puede tardar unos minutos en aparecer la primera vez. Si hay un error, lea la primera línea de error de la consola, no la última.
- Cannot find module o ModuleNotFoundError: falta una dependencia en package.json o requirements.txt.
- Un bot detenido de forma inesperada se reinicia automáticamente, y los logs siguen disponibles.
- Bot conectado pero sin responder: lea por qué un bot de Discord se desconecta.
Por qué elegir ACLClouds para este bot
La oferta Free no pone el bot en reposo ni pide tarjeta bancaria. Sus límites son públicos: 1 bot, 315 MB de RAM, 0,25 vCPU y 715 MB de almacenamiento. La renovación es gratuita, desde la página del bot, en los 2 días anteriores al vencimiento.
- Un acceso SFTP propio para cada bot (puerto 2222), también en la oferta gratuita.
- ffmpeg, yt-dlp y deno ya instalados en los entornos Node.js y Python.
- Un panel en 7 idiomas, entre ellos francés, inglés y alemán.
- Una oferta de pago más adelante, sin cambiar de panel, cuando el bot necesite más recursos o una base de datos.
Preguntas frecuentes
¿Mi bot sigue en línea cuando apago mi PC?
Sí. El bot se ejecuta en la infraestructura de ACLClouds, no en su ordenador. Solo tiene que renovar la oferta Free gratis cada 4 días desde la página del bot.
¿Qué pasa si me olvido de renovar?
El bot se suspende al vencer. Puede renovarlo gratis desde su página una vez suspendido y luego reiniciarlo.
¿Puedo alojar un bot de música en la oferta Free?
ffmpeg y yt-dlp ya están instalados, pero la reproducción de audio consume memoria y CPU. Con 315 MB de RAM y 0,25 vCPU, pruebe en un servidor pequeño y pase a una oferta de pago si el sonido se corta.
¿Cuántos bots puedo alojar gratis?
Un bot por cuenta en la oferta Free. Un segundo bot requiere una oferta de pago, a partir de la oferta Starter.