Skip to content

Sergepetroff/RSSHub-on-render

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

RSSHub on Render: Image Deploy

Обзор

RSSHub — генератор RSS‑лент, который можно быстро развернуть на Render из публичного Docker‑образа без собственной БД и с кэшем в памяти. Для Telegram‑маршрутов поддерживается авторизованный доступ через переменные TELEGRAM_* для приватных и ограниченных каналов.

Возможности

  • Разворачивание как веб‑сервис из предсобранного образа без Dockerfile.
  • Автоматическое определение порта через переменную PORT внутри контейнера.
  • Поддержка маршрутов Telegram, включая закрытые и ограниченные каналы.
  • Кэширование ответов в памяти (подходит для бесплатного плана Render).
  • Возможность перехода на Redis при росте нагрузки.

Быстрый старт на Render

  1. Создайте Web Service с типом “Deploy a prebuilt Docker image”.
  2. Укажите образ: diygod/rsshub:latest.
  3. Выберите бесплатный план и регион (например, Oregon).
  4. Добавьте переменные окружения (см. ниже).
  5. Выполните деплой.

💡 Для маршрутов, требующих headless‑браузер, используйте образ diygod/rsshub:chromium-bundled для стабильной работы.

Переменные окружения (минимум)

Переменная Значение Назначение
NODE_ENV production Режим продакшена
CACHE_TYPE memory Кэш в памяти (без внешних сервисов)
ALLOW_ORIGIN * Разрешить CORS для внешних клиентов
TELEGRAM_API_ID <ваш api_id> Telegram API ID
TELEGRAM_API_HASH <ваш api_hash> Telegram API Hash
TELEGRAM_SESSION <строка сессии> Авторизованный доступ к Telegram‑маршрутам

Получение TELEGRAM_API_ID / HASH / SESSION

  1. Создайте Telegram‑приложение на https://my.telegram.org, чтобы получить api_id и api_hash.

  2. Сгенерируйте строку сессии:

    node ./lib/routes/telegram/scripts/get-telegram-session.mjs
  3. Скопируйте результат в TELEGRAM_SESSION и добавьте все три переменные в Render.

Проверка маршрутов

  • Домашний адрес сервиса отдаёт страницу RSSHub после успешного запуска.

  • Проверка маршрута Telegram:

    /telegram/channel/:username
    

    Если авторизация корректна — лента приватных каналов будет загружаться.

Если получаете 403 или пустую ленту — проверьте TELEGRAM_* и настройте прокси при необходимости.

Прокси и обход ограничений

Переменная Описание
PROXY_URI Глобальный прокси для всех запросов
PROXY_URL_REGEX Избирательное проксирование
TELEGRAM_PROXY_HOST Прокси для Telegram
TELEGRAM_PROXY_PORT Порт прокси
TELEGRAM_PROXY_SECRET Секрет прокси

Кэш и производительность

  • Для старта достаточно CACHE_TYPE=memory.

  • Для Redis используйте:

    CACHE_TYPE=redis
    REDIS_URL=redis://<host>:<port>
    
  • Управляйте временем жизни кэша:

    CACHE_EXPIRE=300
    CACHE_CONTENT_EXPIRE=600
    

Обновления и перезапуск

  • Для обновления используйте Manual Deploy → Deploy latest reference в Render.
  • При изменении только переменных окружения — достаточно Restart service.

Безопасность

  • Храните TELEGRAM_SESSION и api_hash только в переменных окружения.
  • Не коммитьте секреты в репозиторий.
  • Для приватных лент ограничьте публичный доступ и периодически обновляйте сессию.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published