Skip to content

Ayomits/UppyBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

534 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Небольшой гайд по деплою и запуску (для себя любимого и забывчивого)

Сервисы в Uppy:

  1. Redis
  2. Mongodb
  3. Rabbitmq
  4. Telegram бот
  5. Discord bot
  6. Fastify бекенд

Для криптографии

ENCRYPTION_KEY="super-secret-key"

Для Redis

REDIS_HOST="localhost"
REDIS_PORT="6379"
REDIS_USER="" # только прод
REDIS_PASSWORD="" # только прод

Для Mongodb

MONGO_URL="mongodb://localhost:27018/?authSource=admin"

Для RabbitMQ

RABBITMQ_URI="amqp://localhost:5672"

Для Telegram

TELEGRAM_TOKEN
MONGO_URL="mongodb://localhost:27018/?authSource=admin"
RABBITMQ_URI="amqp://localhost:5672"
ENCRYPTION_KEY="super-secret-key"

REDIS_HOST="localhost"
REDIS_PORT="6379"

Для Discord

APP_ENV=dev

TELEGRAM_TOKEN="123"

DISCORD_TOKEN="dsfs"

UPPY_URL="http://localhost:4200"
UPPY_INTERNAL_TOKEN="super-secret-token"

MONGO_URL="mongodb://localhost:27018/?authSource=admin"

REDIS_HOST="localhost"
REDIS_PORT="6379"

RABBITMQ_URI="amqp://localhost:5672"

Для Fastify

APP_ENV=dev

DISCORD_CLIENT_ID="123"
DISCORD_CLIENT_SECRET="123"
DISCORD_REDIRECT_URI="http://localhost:4200/discord/callback"

UPPY_URL="http://localhost:4200"
UPPY_INTERNAL_TOKEN="super-secret-token"

MONGO_URL="mongodb://localhost:27018/?authSource=admin"

REDIS_HOST="localhost"
REDIS_PORT="6379"
REDIS_USER=""
REDIS_PASSWORD=""

RABBITMQ_URI="amqp://localhost:5672"

Гайд по установке на vds для всех желающих

Для начала убедитесь, что вы потратили свои 450 рублей на хостинг и научились подключаться по ssh. Научились? Супер!

Установка Dokploy

Dokploy - платформа, где вы сможете удобно управлять всеми сервисами Uppy

curl -sSL https://dokploy.com/install.sh | sh

Вход в веб-интерфейс

После установки Dokploy у вас в консоли вывелся url, по которому вы попадёт в веб-интерфейс. Придумайте пароль и введите почту (p.s. необязательно свою, это не валидируется)

Создайте проект для баз данных

С помощью указанной на скриншоте кнопки создайте проект, назовите его databases

Dokploy веб-интерфейс

Создайте сервисы баз данных

Для того, чтобы Uppy смог запуститься, вам потребуется создать следующие сервисы:

  1. Rabbitmq
  2. Redis
  3. Mongodb

alt text

Redis & Mongodb
Для этих сервис предусмотрены шаблоны. Просто вводите все значения по дефолту, кроме пароля
Далее вам потребуется открыть эти сервисы в "интернет". Сделать это можно здесь: alt text

После этого скопируйте значение из "External host" и куда-нибудь сохраните (это вам понадобится чуть позже)

RabbitMQ
К сожалению, для этого сервиса нет встроенного шаблона, поэтому сделаем всё ручками :)
Подобно Redis и Mongodb создайте на этот раз уже service и назовите его "rabbitmq"

После этого следуйте фото-инструкции: alt text

alt text

alt text

alt text

alt text

alt text

Запуск - Nodejs (без телеграмм уведомлений)

(Надеюсь вы сможете на гуглить как подготовить nodejs и git на сервере, в конце-концов ChatGPT)

npm install -g pnpm && git clone https://github.com/Ayomits/UppyBot && cd UppyBot && pnpm install

Скопируйте следующее

APP_ENV=prod

DISCORD_TOKEN="ВАШ_ТОКЕН"

MONGO_URL="mongodb://localhost:27018/?authSource=admin"

REDIS_HOST="localhost"
REDIS_PORT="6379"
REDIS_USER=""
REDIS_PASSWORD=""

RABBITMQ_URI="amqp://localhost:5672"

MONGOURL="mongodb://{ВАШЕИМЯПОЛЬЗОВАТЕЛЯ_MONGO_DB}:{ВАШПАРОЛЬMONGO_DB}@{АЙПИВАШЕГО_СЕРВЕРА}:27017/?authSource=admin"

REDISHOST="АЙПИВАШЕГОСЕРВЕРА"
REDIS_PORT="6379"
REDIS_USER="ВАШЕ
ИМЯПОЛЬЗОВАТЕЛЯ"
REDIS_PASSWORD="ВАШ
ПАРОЛЬОТРЕДИСА"

RABBITMQURI="amqp://{ШАГ_2ПЕРЕМЕНАЯRABBITMQ_DEFAULT_USER}:{ШАГ_2ПЕРЕМЕНАЯRABBITMQ_DEFAULT_PASS}@{АЙПИВАШЕГО_СЕРВЕРА}:5672"

nano .env
npm install -g pm2
pnpm run build && pm2 start --name uppy dist/discord/main.js

About

Uppy bot

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors