2026-07-04 18:17:39 +05:00
2026-07-03 19:06:42 +05:00
2026-07-03 19:06:42 +05:00
V2
2026-06-30 18:57:56 +05:00
2026-07-03 19:06:42 +05:00
V2
2026-06-30 18:57:56 +05:00
2026-07-03 19:06:42 +05:00
2026-07-04 18:17:39 +05:00
V2
2026-06-30 18:57:56 +05:00
V2
2026-06-30 18:57:56 +05:00
V2
2026-06-30 18:57:56 +05:00

🌤️ Weather Telegram Bot (with Ansible Deployment)

Бот для получения прогноза погоды, упакованный в Docker. В репозитории также находится Ansible-плейбук для автоматического развертывания на любом облачном сервере Ubuntu за 2 минуты.

🚀 Быстрый старт за 2 минуты

  1. Склонируйте репозиторий командой:

    git clone https://github.com/LeoR156/pogoda_tg_bot.git
    cd pogoda_tg_bot
    
  2. Получите токены и ключи:

    • Создайте бота(ов) и скопируйте токен(ы) у @BotFather в Telegram.
    • Получите бесплатный API ключ на сайте OpenWeatherMap.
    • Узнайте свой Telegram ID у официального бота @userinfobot
  3. Создайте файл инвентори: Создайте файл inventory.ini и добавьте туда серверы для установки. Вы можете задать общие переменные admin (ваш ID) и api_pogoda (ключ погоды) для всех серверов. А вот токен телеграм-бота tg_token должен быть обязательно разным для каждого бота, иначе боты будут конфликтовать за входящие сообщения.

    Пример синтаксиса inventory.ini:

    [tg_bot_3x]
    # Указываем IP серверов и уникальные токены ботов для каждого сервера
    server1 ansible_host=222.222.222.222 tg_token="123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11"
    server2 ansible_host=111.111.111.111 tg_token="987654:XYZ-ABC1234ghIkl-zyx57W2v1u123ew11"
    
    [tg_bot_3x:vars]
    # Общие переменные для всех хостов в этой группе
    api_pogoda="ваш_ключ_openweathermap"
    admin=123456789
    

    (Примечание: файл .env вам не нужен, так как Ansible сам пробросит переменные из inventory прямо в Docker-контейнеры!)

  4. Настройте Playbook: В файле playbook.yml убедитесь, что в поле hosts: указана группа из вашего inventory.ini (в примере выше это tg_bot_3x).

  5. Запуск: Проверьте файл на ошибки командой:

    ansible-playbook playbook.yml --syntax-check
    

    Если есть ошибки, то исправьте синтаксис в файлу. Если всё хорошо, запускайте автоматическую установку командой:

    ansible-playbook playbook.yml -i inventory.ini
    

Через несколько минут Ansible закончит свою работу и вы получите работающих телеграмм ботов!

S
Description
No description provided
Readme
70 KiB
Languages
Python 97.5%
Dockerfile 2.5%