Compare commits
3 Commits
a6b9b72fa7
...
8a51b0db79
Author | SHA1 | Date | |
---|---|---|---|
8a51b0db79 | |||
184bce81e9 | |||
ba09035585 |
70
README.md
70
README.md
@ -1,2 +1,70 @@
|
||||
# TelegramBotTemplate
|
||||
<h3 align="center">TelegramBotTemplate</h3>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[]()
|
||||
[](/LICENSE)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
## 📝 Содержание
|
||||
|
||||
- [О проекте](#about)
|
||||
- [Установка и запуск](#install)
|
||||
|
||||
|
||||
## 🧐 О проекте <a name = "about"></a>
|
||||
|
||||
Проект шаблон с небольшими примерами реализации states, factory, и callbacks. Упор был сделан на отказоустойчивость и более простую поддержку проекта при его росте
|
||||
|
||||
## 🎈 Установка и запуск <a name = "install"></a>
|
||||
|
||||
Для установки необходимо выполнить установку компонентов в системе Ubuntu:
|
||||
|
||||
```
|
||||
sudo apt update
|
||||
sudo apt install -y git docker.io docker-compose
|
||||
```
|
||||
|
||||
Далее:
|
||||
- Получить API_TOKEN в [ссылка](https://t.me/botFather)
|
||||
|
||||
### В папке с проектом:
|
||||
для систем Ubuntu:
|
||||
```
|
||||
python -m venv venv
|
||||
source ./venv/bin/activate
|
||||
./venv/bin/python -m pip install -r requirements.txt
|
||||
```
|
||||
для систем Windows:
|
||||
```
|
||||
python -m venv venv
|
||||
./venv/Scripts/activate
|
||||
./venv/Scripts/python -m pip install -r requirements.txt
|
||||
```
|
||||
создайте в папке проекта .env файл, и поместите значения следующим образом:
|
||||
```
|
||||
# Show debug messages in sys.out
|
||||
DEBUG=True
|
||||
|
||||
# Telegram
|
||||
API_TOKEN=Ваш_токен
|
||||
|
||||
# Database Postgres
|
||||
DATABASE_URL_LOCAL_MIGRATE=postgresql+asyncpg://admin:admin@localhost:5432/postgresdb
|
||||
POSTGRES_USER=admin
|
||||
POSTGRES_PASSWORD=admin
|
||||
POSTGRES_PORT=5432
|
||||
POSTGRES_DB=postgresdb
|
||||
PGDATA=/var/lib/postgresql/data/pgdata
|
||||
```
|
||||
|
||||
Останется собрать всё это для работы:
|
||||
### Команда:
|
||||
|
||||
> sudo docker compose --file 'docker-compose.dev.yaml' up -d
|
||||
|
||||
После запуска проекта, запустите миграцию моделей в базу данных
|
||||
> alembic upgrade head
|
||||
|
||||
|
@ -13,7 +13,7 @@ def get_logger(filename: str = "/volumes/logs/main.log", level: str = "INFO") ->
|
||||
logger.remove()
|
||||
logger.add(filename, level=level, rotation="5 MB")
|
||||
|
||||
if os.getenv("debug") == "True":
|
||||
if os.getenv("DEBUG") == "True":
|
||||
logger.add(sys.stderr, level="DEBUG")
|
||||
else:
|
||||
logger.add(sys.stderr, level=level)
|
||||
@ -22,7 +22,7 @@ def get_logger(filename: str = "/volumes/logs/main.log", level: str = "INFO") ->
|
||||
|
||||
|
||||
class Secrets:
|
||||
bot_token: str = os.getenv("bot_token")
|
||||
bot_token: str = os.getenv("BOT_TOKEN")
|
||||
redis_url: str = "redis://redis_telegram_bot:6379"
|
||||
postgres_url: str = "postgresql+asyncpg://admin:admin@postgres_telegram_bot:5432/postgresdb"
|
||||
|
||||
|
1
docs/status-active-success.svg
Normal file
1
docs/status-active-success.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="86" height="20" role="img" aria-label="status: active"><title>status: active</title><linearGradient id="s" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="r"><rect width="86" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#r)"><rect width="43" height="20" fill="#555"/><rect x="43" width="43" height="20" fill="#4c1"/><rect width="86" height="20" fill="url(#s)"/></g><g fill="#fff" text-anchor="middle" font-family="Verdana,Geneva,DejaVu Sans,sans-serif" text-rendering="geometricPrecision" font-size="110"><text aria-hidden="true" x="225" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="330">status</text><text x="225" y="140" transform="scale(.1)" fill="#fff" textLength="330">status</text><text aria-hidden="true" x="635" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="330">active</text><text x="635" y="140" transform="scale(.1)" fill="#fff" textLength="330">active</text></g></svg>
|
After Width: | Height: | Size: 1.1 KiB |
Loading…
x
Reference in New Issue
Block a user