"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Alojar Telegram Bot en Raspberry Pi 5

Alojar Telegram Bot en Raspberry Pi 5

Publicado el 2024-11-04
Navegar:816

Host Telegram Bot on Raspberry Pi 5

Tabla de contenido:

  • Introducción
  • Instalar sistema operativo en Raspberry Pi 5
  • Conéctese a Raspberry Pi a través de SSH
  • Preparar ambientación
  • Crear y ejecutar el bot
  • Mantenga el bot ejecutándose en segundo plano usando tmux
  • Iniciar automáticamente el bot al arrancar (opcional)

Intruducción

En mi artículo anterior, demostré cómo crear y ejecutar un Telegram Bot usando Python. Puedes encontrarlo aquí

En esta guía, te explicaré cómo alojar tu bot de Telegram en tu propio servidor Raspberry Pi.

Instalar el sistema operativo en Raspberry Pi 5

Sigue esta guía para crear una imagen con Raspberry Pi Imager.

Recomiendo elegir Raspberry Pi OS Lite OS porque es la mejor opción en términos de simplicidad liviana.

En la configuración de la cámara, marque la casilla junto a Habilitar SSH y seleccione usar autenticación con contraseña. Esto te permitirá conectarte a tu Raspberry Pi a través de SSH.

Después de crear la imagen en una unidad flash USB, inserta la tarjeta flash en tu Raspberry Pi y enciéndela.

Conéctese a Raspberry Pi a través de SSH

  1. Abre la consola (cmd o PowerShell en Windows)
  2. Haga ping a su Raspberry Pi con el siguiente comando:
ping raspberrypi.local

Recibirás estadísticas de ping junto con la dirección IP de tu Raspberry Pi.

  1. Utilice esta dirección IP para conectarse a través de SSH:
SSH pi@ (for example: SSH [email protected])
  1. Ingrese la contraseña (la predeterminada es frambuesa). Recomiendo encarecidamente cambiar esto más tarde.
  2. Si la contraseña es correcta, se conectará a su Raspberry Pi a través de SSH.

preparar el ambiente

  1. Actualiza tu Raspberry Pi
sudo apt update
sudo apt upgrade
  1. Instalar Python El sistema operativo Raspberry Pi generalmente viene con Python preinstalado. Comprueba si está instalado:
python3 --version

Si Python no está instalado, puedes instalarlo usando:

sudo apt install python3 python3-pip
  1. Configurar un entorno virtual (opcional pero recomendado) Es una buena práctica crear un entorno virtual para mantener aisladas las dependencias de su proyecto:
sudo apt install python3-venv
python3 -m venv telegram-bot-env
source telegram-bot-env/bin/activate
  1. Instalar la biblioteca de bots de Telegram de Python
pip install python-telegram-bot --upgrade

Crear y ejecutar el bot

  1. Cree un nuevo archivo Python usando el editor de texto nano
nano bot.py
  1. Escribe el código de tu bot en este nuevo archivo _(puedes usar el código de mi artículo anterior). Presione CTRL O y luego presione Enter para guardar los cambios. Para salir presione CTRL X.
  2. Ejecutar el bot
python3 bot.py

Tu bot ya se está ejecutando y puedes probarlo en Telegram.

Sin embargo, este método finalizará el bot cuando cierres la terminal.

Para que siga ejecutándose en segundo plano podemos usar tmux

Mantenga el bot ejecutándose en segundo plano usando tmux

Cree un script de Shell ejecutable para iniciar su bot

  1. Instalar tmux
sudo apt update
sudo apt install tmux
  1. Crea un nuevo script de shell para iniciar tu bot. Puedes nombrarlo start_bot.sh.
nano start_bot.sh
  1. Agregue las siguientes líneas al script, reemplazando bot.py con el nombre de su archivo bot de Python y telegram-bots-env con su nombre de entorno:
#!/bin/bash
source telegram-bots-env/bin/activate
python3 bot.py
  1. Guardar y salir (CTRL O, Intro, CTRL X).
  2. Hacer el script ejecutable:
chmod  x start_bot.sh

Ejecute Bot a través de tmux:

  1. Iniciar una nueva sesión de tmux:
tmux new -s my_bot_session
  1. Dentro de la sesión tmux, ejecuta el script de tu bot:
./start_bot.sh
  1. Separe de la sesión tmux presionando CTRL B, luego D
  2. Vuelva a conectarse a la sesión tmux (si es necesario) Para volver a conectarse a la sesión tmux de su bot más tarde, use:
tmux attach -t my_bot_session

Iniciar automáticamente el bot al arrancar (opcional)

Si desea que su bot se inicie automáticamente al arrancar, puede usar un servicio systemd. Así es como:

  1. Crear un nuevo archivo de servicio:
sudo nano /etc/systemd/system/my_bot.service
  1. Agregue la siguiente configuración, modificando las rutas según sea necesario:
[Unit]
Description=My Bot Service

[Service]
ExecStart=/usr/bin/tmux new-session -d -s my_bot_session '/path/to/start_bot.sh'
WorkingDirectory=/path/to/my_bot
User=pi

[Install]
WantedBy=multi-user.target
  1. Guardar y salir del archivo.
  2. Recarga el demonio systemd:
sudo systemctl daemon-reload
  1. Habilite el servicio para que se inicie al arrancar:
sudo systemctl enable my_bot.service
  1. Iniciar el servicio:
sudo systemctl start my_bot.service
Declaración de liberación Este artículo se reproduce en: https://dev.to/dmitry-koleev/host-telegram-bot-on-raspberry-pi-5-16ld?1 Si hay alguna infracción, comuníquese con [email protected] para eliminarla. él
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3