Ця стаття описує процес розгортання 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Після старту системи бот має автоматично запуститись.


Коментувати