unicheckbot/README.md

31 lines
2.4 KiB
Markdown
Raw Normal View History

2021-01-05 03:07:30 +03:00
<h1 align="center">
2021-02-05 13:49:33 +03:00
Universal Checker Bot
2021-01-05 03:07:30 +03:00
</h1>
<p align="center">
<img src="https://img.shields.io/badge/aiogram-blue"> <img src="https://img.shields.io/badge/gevent-green"> <img src="https://img.shields.io/badge/flask-yellow"> <img src="https://img.shields.io/badge/mcstatus-purple"> <img src="https://img.shields.io/badge/icmplib-pink"> <img src="https://img.shields.io/badge/requests-black">
</p>
Данный бот служит для получения различной информации о хосте с нескольких нод.
Часто возникают случаи, когда необходимо посмотреть, как поведет себя тот или инной ресурс с различных IP адресов. Например - посмотреть задержку или заблокирован ли порт для определенного региона.
### Работает это таким образом:
* На удаленные сервера устанавливается API-сервер
* На ещё один сервер(или рядом) устанавливается бот
* В настройках бота (в файле `nodes.py`) указываются адреса серверов API
* В зависимости от команды бот получает информацию с указанных нод
* Архитектура не отменяет того, что в боте есть команды, которые выполняются на хосте где установлен бот.
2021-01-07 01:39:20 +03:00
Все команды, которые есть сейчас, можно посмотреть [в самом боте](https://t.me/unicheckbot), для этого напишите в нём /start
2021-01-05 03:07:30 +03:00
### Установка
* Установите git, docker и docker-compose
2021-01-07 01:39:20 +03:00
* Склонируйте репозиторий: `git clone https://github.com/catspace-dev/unicheckbot`
2021-01-05 03:07:30 +03:00
#### Установка API сервера
2021-01-07 11:02:12 +03:00
* Настройте параметры в `api.env`
* Запустите `docker-compose -f docker-compose-api.yml --env-file api.env up -d`
* В боте по пути `apps/tgbot/tgbot/nodes.py` добавьте ноду как указано в примере и перезапустите бота.
2021-01-05 03:07:30 +03:00
#### Установка бота
2021-01-07 11:02:12 +03:00
* Настройте параметры в `tgbot.env`
* Запустите `docker-compose -f docker-compose-tgbot.yml --env-file tgbot.env up -d`