「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Raspberry Pi 5 で Telegram ボットをホストする

Raspberry Pi 5 で Telegram ボットをホストする

2024 年 11 月 4 日に公開
ブラウズ:677

Host Telegram Bot on Raspberry Pi 5

目次:

  • はじめに
  • Raspberry Pi 5 に OS をインストールする
  • SSH 経由で Raspberry Pi に接続
  • 環境を準備します
  • ボットの作成と実行
  • tmux を使用してボットをバックグラウンドで実行し続ける
  • 起動時にボットを自動的に開始する (オプション)

はじめに

前の記事では、Python を使用して Telegram Bot を作成して実行する方法を説明しました。ここで見つけることができます

このガイドでは、Telegram ボットを独自の Raspberry Pi サーバーでホストする方法を説明します。

Raspberry Pi 5にOSをインストールする

このガイドに従って、Raspberry Pi Imager を使用してイメージを作成します。

Raspberry Pi OS Lite OS を選択することをお勧めします。これは、軽量でシンプルな点で最良の選択肢であるためです。

イメージャー設定で、SSH を有効にするの横のボックスにチェックを入れ、パスワード認証を使用するを選択します。これにより、SSH 経由で Raspberry Pi に接続できるようになります。

USB フラッシュ ドライブにイメージを作成した後、フラッシュ カードを Raspberry Pi に挿入し、電源をオンにします。

SSH経由でRaspberry Piに接続する

  1. コンソールを開きます (Windows では cmd または PowerShell)
  2. 次のコマンドを Raspberry Pi に送信します。
ping raspberrypi.local

Raspberry Pi の IP アドレスとともに ping 統計情報を受け取ります。

  1. この IP アドレスを使用して SSH 経由で接続します:
SSH pi@ (for example: SSH [email protected])
  1. パスワードを入力します(デフォルトはラズベリー)。これを後で変更することを強くお勧めします。
  2. パスワードが正しければ、SSH 経由で Raspberry Pi に接続されます。

環境の準備

  1. Raspberry Pi をアップデートする
sudo apt update
sudo apt upgrade
  1. Pythonをインストールする Raspberry Pi OS には通常、Python がプリインストールされています。インストールされているかどうかを確認します。
python3 --version

Python がインストールされていない場合は、次のコマンドを使用してインストールできます:

sudo apt install python3 python3-pip
  1. 仮想環境のセットアップ (オプションですが推奨) プロジェクトの依存関係を分離した状態に保つために、仮想環境を作成することをお勧めします。
sudo apt install python3-venv
python3 -m venv telegram-bot-env
source telegram-bot-env/bin/activate
  1. Python Telegram ボット ライブラリをインストールする
pip install python-telegram-bot --upgrade

ボットを作成して実行する

  1. nano テキスト エディターを使用して新しい Python ファイルを作成する
nano bot.py
  1. この新しいファイルにボット コードを記述します _(前の記事のコードを使用できます)。 CTRL O を押してから Enter キーを押し、変更を保存します。終了するには、CTRL X を押します。
  2. ボットを実行する
python3 bot.py

ボットが実行中です。Telegram でテストできます。

ただし、この方法ではターミナルを閉じるとボットも終了してしまいます。

バックグラウンドで実行し続けるには、tmux を使用できます

tmux を使用してボットをバックグラウンドで実行し続ける

ボットを起動するための実行可能シェル スクリプトを作成する

  1. tmuxをインストールする
sudo apt update
sudo apt install tmux
  1. ボットを起動するための新しいシェル スクリプトを作成します。 start_bot.sh という名前を付けることができます
nano start_bot.sh
  1. 次の行をスクリプトに追加し、bot.py を Python ボット ファイルの名前に置き換え、telegram-bots-env を環境名に置き換えます。
#!/bin/bash
source telegram-bots-env/bin/activate
python3 bot.py
  1. 保存して終了します (CTRL O、Enter、CTRL X)。
  2. スクリプトを実行可能にします:
chmod  x start_bot.sh

tmux 経由でボットを実行します。

  1. 新しい tmux セッションを開始します。
tmux new -s my_bot_session
  1. tmux セッション内で、ボット スクリプトを実行します。
./start_bot.sh
  1. CTRL B を押してから D を押して、tmux セッションから切断します。
  2. tmux セッションに再接続します (必要な場合) 後でボットの tmux セッションに再接続するには、次を使用します。
tmux attach -t my_bot_session

起動時にボットを自動的に開始する (オプション)

ブート時にボットを自動的に起動したい場合は、systemd サービスを使用できます。方法は次のとおりです:

  1. 新しいサービス ファイルを作成します:
sudo nano /etc/systemd/system/my_bot.service
  1. 次の構成を追加し、必要に応じてパスを変更します。
[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. ファイルを保存して終了します。
  2. systemd デーモンをリロードします。
sudo systemctl daemon-reload
  1. 起動時にサービスが開始できるようにします。
sudo systemctl enable my_bot.service
  1. サービスを開始します:
sudo systemctl start my_bot.service
リリースステートメント この記事は次の場所に転載されています: https://dev.to/dmitry-koleev/host-telegram-bot-on-raspberry-pi-5-16ld?1 侵害がある場合は、[email protected] に連絡して削除してください。それ
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3