https://github.com/itkuznetsov/python-telegram-bot
Пример Telegram-бота с интеграцией PostgreSQL
https://github.com/itkuznetsov/python-telegram-bot
alembic bot docker docker-compose postgresql pytelegrambotapi python python3 sqlmodel telegram telegram-bot
Last synced: 9 months ago
JSON representation
Пример Telegram-бота с интеграцией PostgreSQL
- Host: GitHub
- URL: https://github.com/itkuznetsov/python-telegram-bot
- Owner: ITKuznetsov
- Created: 2025-01-17T21:50:07.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-02-14T19:35:16.000Z (10 months ago)
- Last Synced: 2025-03-14T02:11:57.246Z (9 months ago)
- Topics: alembic, bot, docker, docker-compose, postgresql, pytelegrambotapi, python, python3, sqlmodel, telegram, telegram-bot
- Language: Python
- Homepage:
- Size: 18.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🐍 Python Telegram Bot
Telegram-бот с интеграцией PostgreSQL, созданный с использованием PyTelegramBotAPI, SQLModel и Alembic. Бот поддерживает обработку команд, динамическое меню, работу с файлами и фото, а также хранение данных пользователей в базе данных.
## 🧪 Технологии
* Python
* PyTelegramBotAPI
* SQLModel (ORM для работы с PostgreSQL)
* Alembic (управление миграциями базы данных)
* PostgreSQL
* Docker
## 🐳 Локальный запуск (с использованием Docker)
1. Создайте файл .env в корне проекта и заполните его необходимыми переменными окружения:
```bash
touch .env
```
Пример содержимого .env:
```bash
BOT_TOKEN=your_telegram_bot_token
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_DB=bot
POSTGRES_HOST=db
```
2. Запустите проект с помощью Docker Compose:
```bash
docker-compose up --build
```
## 💻 Локальный запуск (без Docker)
1. Создайте и активируйте виртуальное окружение:
```bash
python -m venv venv
source venv/bin/activate
```
2. Установите зависимости:
```bash
pip install --upgrade pip
pip install -r requirements.txt
```
3. Создайте файл .env и заполните его переменными окружения (см. пример выше, переменную POSTGRES_HOST установить в значение localhost).
4. Запустите PostgreSQL на вашем компьютере и создайте базу данных с именем, указанным в переменной окружения POSTGRES_DB.
5. Создайте и выполните миграции Alembic:
```bash
alembic revision --autogenerate -m "Initial migration"
alembic upgrade head
```
6. Запустите бота:
```bash
python main.py
```