Skip to content

Latest commit

 

History

History
101 lines (66 loc) · 1.72 KB

File metadata and controls

101 lines (66 loc) · 1.72 KB

Installation Guide

This project now runs only on the TypeScript/Node.js stack.

Prerequisites

  • Node.js 20+
  • npm
  • Redis 7+
  • Telegram bot token from @BotFather

For Docker deployment you only need Docker and Docker Compose.

Docker Installation

  1. Clone the repository.
  2. Copy the environment template.
cp .env.example .env
  1. Edit .env and set at least BOT_TOKEN.
  2. Start the stack.
docker compose up -d --build
  1. Verify the service.
docker compose ps
curl http://localhost:8916/health

The app container runs Prisma migrations on startup and stores SQLite data in /app/data.

Local Installation

  1. Install dependencies.
npm install
  1. Copy the environment template.
cp .env.example .env
  1. For local development, update these values:
NODE_ENV=development
DATABASE_URL=file:./dev.db
REDIS_HOST=localhost
BOT_TOKEN=your_real_token
  1. Start Redis locally, for example:
docker run --name rss-skull-redis -p 6379:6379 redis:7-alpine
  1. Generate Prisma client and start the app.
npm run db:generate
npm run dev

First Checks

  • curl http://localhost:8916/health
  • curl http://localhost:8916/stats
  • send /start to the bot on Telegram

Common Issues

BOT_TOKEN missing or invalid

The app exits during startup or fails to initialize the bot.

Redis unavailable

BullMQ workers depend on Redis. Verify REDIS_HOST, REDIS_PORT and container status.

Prisma client missing

Run:

npm run db:generate

Old webhook or second bot instance

The bot clears webhook state during startup, but a concurrent process with the same token can still cause 409 Conflict.