Cómo alojar un bot de Discord 24/7 (Node.js y Python)
Aprende a mantener un bot de Discord encendido las 24 horas con Node.js o Python: token seguro, dependencias, reinicios y un hosting pensado para bots.
Para mantener un bot de Discord en línea las 24 horas, ejecútalo en una máquina que nunca se apague: un plan de hosting pensado para bots, un VPS o, al menos, un gestor de procesos en un equipo siempre encendido. El bot solo necesita una conexión de salida hacia Discord, así que no hacen falta puertos abiertos, un dominio ni un servidor web. Lo que sí necesita es un entorno estable, un token bien guardado y una forma de reiniciarse si se cae.
Por qué tu propio equipo no es buen anfitrión
Un bot que corre en tu laptop se desconecta cuando cierras la tapa, pierdes el wifi o reinicias para actualizar. Los servidores que dependen de él tienen un bot que «casi siempre está». Alojarlo en un lugar siempre activo resuelve tres cosas a la vez: disponibilidad, una conexión estable y un sitio donde guardar los registros.
Tus opciones
| Opción | Sirve para | A cambio de |
|---|---|---|
| Tu propio PC | Desarrollo y pruebas | Está desconectado cuando el PC lo está |
| Planes gratuitos de plataformas | Experimentos | Muchos se duermen al estar inactivos, algo que un bot no puede hacer |
| Hosting para bots o programación | La mayoría de bots | Un plan mensual, pero con consola, reinicios y Git incluidos |
| Un VPS | Varios bots, configuración a medida | Administras tú el sistema y su seguridad |
Un bot mantiene una conexión permanente con Discord, así que evita las plataformas que duermen los procesos inactivos. Si dudas entre un plan y un VPS, te ayuda VPS vs VDS vs hosting compartido vs servidor de juegos.
Paso 1: Crea el bot y guarda el token en secreto
- Abre el Portal de Desarrolladores de Discord, crea una aplicación y añade un Bot.
- Copia el token una sola vez. Es la contraseña del bot.
- Activa solo los intents que necesites. Leer el contenido de los mensajes es un intent privilegiado y hay que habilitarlo en el portal.
- Genera un enlace de invitación con los ámbitos
botyapplications.commandsy añade el bot a tu servidor.
Nunca subas el token a Git, no lo pegues en un mensaje público ni lo escribas a mano en el código. Si se filtra, regenéralo de inmediato en el portal. Guárdalo en una variable de entorno o en un archivo .env incluido en .gitignore.
Paso 2: Un bot mínimo
Node.js (discord.js)
import { Client, GatewayIntentBits } from 'discord.js';
const client = new Client({ intents: [GatewayIntentBits.Guilds] });
client.once('ready', () => console.log(`Conectado como ${client.user.tag}`));
client.login(process.env.DISCORD_TOKEN);Las dependencias van en package.json; el hosting ejecuta npm install.
Python (discord.py)
import os
import discord
client = discord.Client(intents=discord.Intents.default())
@client.event
async def on_ready():
print(f"Conectado como {client.user}")
client.run(os.environ["DISCORD_TOKEN"])Las dependencias van en requirements.txt; el hosting las instala al arrancar.
Paso 3: Elige un hosting y despliega
En un plan de programación como el de SolumeCore, eliges el entorno (Python, Node.js, Bun, Deno, Go, Java o Rust) al comprar y luego subes tu código de tres formas:
- Pega la URL de tu repositorio de Git y se clona al instalar.
- Sube los archivos con el gestor de archivos.
- Usa SFTP con tu cuenta del panel.
Las dependencias se instalan solas al arrancar si tienes un package.json o un requirements.txt. Después define tus secretos (como DISCORD_TOKEN) como variables de entorno, indica el comando de inicio y pulsa Desplegar.

Más sobre despliegues con Git en cómo desplegar una app de Node.js o Python con Git.
Paso 4: Mantenlo en marcha
Un hosting hecho para bots ya mantiene tu proceso vivo: no se duerme cuando no hay tráfico, no hay arranques en frío y un proceso caído puede levantarse solo. Si usas tu propio servidor, necesitas un gestor de procesos:
- Una unidad de systemd con
Restart=always(genera una con la herramienta de systemd y cron). - pm2 para Node.js.
- Docker con una política de reinicio.
Programa un reinicio nocturno si quieres empezar de cero cada día; una tarea cron en el panel lo hace.
Paso 5: Lee los registros
La consola en vivo muestra la salida de tu programa tal como ocurre, y es el primer sitio donde mirar cuando el bot está desconectado. Registra de forma explícita los errores de conexión y las excepciones no controladas:
Invalid token: el token es incorrecto o se regeneró.Disallowed intents: habilita el intent en el portal.Missing AccessoMissing Permissions: el rol del bot en tu servidor carece de un permiso.
Paso 6: Piensa en crecer
Discord exige que los bots grandes usen sharding, es decir, repartir el trabajo entre varias conexiones, cuando alcanzan un número muy alto de servidores. Un bot pequeño no lo necesitará en mucho tiempo, pero elige una biblioteca que lo soporte y evita guardar en memoria estado que no puedas perder. Usa una base de datos para lo importante; los planes de programación pueden crear bases MySQL desde el panel.
Lista de seguridad
- Token en una variable de entorno, nunca en el código.
.enven.gitignore.- Permisos mínimos para el bot, no Administrador por defecto.
- Valida lo que llega por comandos antes de ejecutar nada con ello.
- Actualiza las dependencias con regularidad.
FAQ
¿Puedo alojar un bot de Discord gratis?
Puedes experimentar en planes gratuitos, pero la mayoría se duermen al estar inactivos, así que el bot se desconecta. Para un bot del que otros dependen, un plan de pago siempre activo es más fiable.
¿Necesito abrir un puerto?
No. Los bots se conectan hacia Discord. Solo necesitas puertos para un panel web o webhooks.
¿Node.js o Python?
Usa lo que conozcas. Ambos tienen bibliotecas maduras (discord.js y discord.py). Node.js es habitual si el bot comparte código con un panel web; Python es popular en bots con mucho manejo de datos.
¿Cuánta RAM necesita un bot?
Los bots pequeños funcionan con holgura en unos cientos de megas. Los que guardan en caché muchos servidores o procesan contenido multimedia necesitan más; vigila el uso en el panel.
¿Por qué mi bot se desconecta de vez en cuando?
Mira primero los registros. Las causas habituales son una excepción sin controlar, presión de memoria o errores de límite de peticiones.
Pon tu bot en línea
Si quieres consola, reinicios, despliegues con Git y bases de datos ya listos, mira el hosting de programación, con páginas dedicadas para Node.js y Python. ¿Necesitas más control? Echa un vistazo a un VPS. La documentación cubre el panel en detalle.