Як запустити Telegram-бота на FreeBSD: покрокова інструкція

Ця стаття описує процес розгортання Telegram-бота на FreeBSD з використанням Python, venv, та автозапуску через rc.d. Папка для розміщення може бути будь-якою, наприклад /usr/local/telegram-bot.

📁 1. Створення робочої директорії

mkdir -p /usr/local/telegram-bot
cd /usr/local/telegram-bot

🐍 2. Створення віртуального середовища Python

python3 -m venv venv
. ./venv/bin/activate

📦 3. Встановлення залежностей

Якщо є requirements.txt:

pip install -r requirements.txt

Або вручну:

pip install python-telegram-bot python-dotenv yagmail

🔐 4. Створення .env файлу

BOT_TOKEN=123456789:ABCDEF-your-real-token-here

🧠 5. Перевірка запуску вручну

python bot.py

Переконайтесь, що бот реагує на /start або повідомлення.

🔄 6. Створення rc.d-скрипта для автозапуску

Створіть файл: /usr/local/etc/rc.d/telegram_bot

#!/bin/sh

# PROVIDE: telegram_bot
# REQUIRE: LOGIN
# KEYWORD: shutdown

. /etc/rc.subr

name="telegram_bot"
rcvar="telegram_bot_enable"
start_cmd="telegram_bot_start"
stop_cmd="telegram_bot_stop"

telegram_bot_start() {
  cd /usr/local/telegram-bot || exit 1
  /bin/sh -c ". ./venv/bin/activate && nohup python bot.py > bot.log 2>&1 &"
}

telegram_bot_stop() {
  pkill -f "python bot.py"
}

load_rc_config $name
run_rc_command "$1"

Додайте права:

sudo chmod +x /usr/local/etc/rc.d/telegram_bot

⚙️ 7. Увімкнення автозапуску

sudo sysrc telegram_bot_enable=YES

🚀 8. Запуск і перевірка

sudo service telegram_bot start
ps aux | grep bot.py
tail -f /usr/local/telegram-bot/bot.log

🔁 9. Перевірка після перезавантаження

sudo reboot

Після старту системи бот має автоматично запуститись.

Коментувати

Простий текст

  • Не дозволено жодних HTML теґів.
  • Рядки й абзаци переносяться автоматично.
  • Адреси вебсторінок та адреси електронної пошти автоматично перетворюються у посилання.