87 lines
2.1 KiB
Markdown
87 lines
2.1 KiB
Markdown
# Telegram MiniApp для удобного информирования о прокси-подписке
|
||
|
||
## Для инициализации
|
||
|
||
Сначала ставим пакеты:
|
||
```
|
||
bun i
|
||
```
|
||
|
||
Потом ставим prisma приколы:
|
||
```
|
||
bunx prisma generate
|
||
```
|
||
|
||
Потом копируем .env.example в .env:
|
||
```
|
||
cp .env.example .env
|
||
```
|
||
|
||
Заполняем его данными всякими (где про базу данных, нужно, чтобы URL соответствовал остальным параметрам), где XUI пишем авторизацию для 3X-UI.
|
||
|
||
---
|
||
|
||
## Для разработки
|
||
|
||
Для разработки поднимаем базу данных и редиску:
|
||
```
|
||
docker-compose up -d db redis
|
||
```
|
||
|
||
Заносим в базу данных таблицы:
|
||
```
|
||
bunx prisma db push
|
||
```
|
||
|
||
Можно запускать приложение, оно будет на http://localhost:3000:
|
||
```
|
||
bun run dev
|
||
```
|
||
|
||
### Изменение БД
|
||
|
||
Если нужно изменить schema.prisma, то нужно будет провести миграцию:
|
||
```
|
||
bunx prisma migrate dev --name *имя*
|
||
```
|
||
|
||
Для удобного взаимодействия с БД можно запустить prisma studio:
|
||
```
|
||
bunx prisma studio
|
||
```
|
||
|
||
### Для проверки в ТГ
|
||
|
||
В BotFather указываем у бота MiniApp url - `https://127.0.0.1:3000` и запускаем сервер:
|
||
```
|
||
bun run dev:https
|
||
```
|
||
|
||
---
|
||
|
||
## Для сборки и production запуска
|
||
```
|
||
docker compose up -d --build
|
||
```
|
||
|
||
### Если были изменения в БД:
|
||
```
|
||
docker compose exec app bunx prisma db push
|
||
```
|
||
|
||
---
|
||
|
||
## Подключение к БД сторонними клиентами
|
||
|
||
Подключиться к серверу:
|
||
```
|
||
ssh -L PORT1:localhost:PORT2 server
|
||
```
|
||
|
||
Где PORT1 - локальный порт, а PORT2 - порт БД на сервере. Подключаться нужно локально к PORT1.
|
||
|
||
То есть, можно указать в .env `DATABASE_URL=postgresql://user:password@localhost:PORT1/dbname` и открыть prisma studio:
|
||
```
|
||
bunx prisma studio
|
||
```
|