bolt Valebyte VPS від $4/міс — NVMe, запуск за 60 секунд.

Отримати VPS arrow_forward

FreshRSS на VPS: встановлення, налаштування та обслуговування

calendar_month June 12, 2026 schedule 20 хв. читання visibility 35 переглядів
person
Valebyte Team
FreshRSS на VPS: встановлення, налаштування та обслуговування
Встановлення FreshRSS на VPS включає розгортання контейнерів Docker, налаштування зворотного проксі-сервера для доступу по HTTPS та регулярне оновлення системи, що дозволяє створити власну, повністю контрольовану платформу для читання RSS-стрічок з максимальною приватністю та гнучкістю. Цей підхід дає повний контроль над даними та функціональністю, роблячи FreshRSS ідеальним вибором для тих, хто цінує незалежність від сторонніх сервісів.

Що таке FreshRSS і чому він ідеальний для self-хостингу на VPS?

FreshRSS – це безкоштовний і відкритий агрегатор RSS-стрічок, який дозволяє вам збирати та читати новини з ваших улюблених сайтів в одному централізованому місці. На відміну від багатьох хмарних RSS-сервісів, FreshRSS спроектований для самостійного розміщення (self-hosted), що робить його ідеальним рішенням для встановлення на ваш власний Virtual Private Server (VPS). Це означає, що ви повністю контролюєте свої дані, приватність та налаштування, не покладаючись на сторонніх провайдерів, які можуть змінювати свою політику або припиняти роботу. Перевага FreshRSS полягає в його простоті, ефективності та широких можливостях кастомізації. Він підтримує безліч функцій, таких як імпорт/експорт OPML, інтеграція з мобільними клієнтами через API (наприклад, Reeder, Feedly-сумісні додатки), фільтрація статей, тегування та багато іншого. Для тих, хто втомився від рекламних банерів, відстеження активності та раптових змін у функціональності комерційних сервісів, FreshRSS на VPS стає ковтком свіжого повітря. Розміщення FreshRSS на власному сервері також дозволяє уникнути проблем з цензурою та блокуваннями, забезпечуючи стабільний доступ до інформації.

Основні переваги FreshRSS

FreshRSS виділяється на тлі інших RSS-рідерів завдяки своїм ключовим особливостям:
  • Повний контроль над даними: Усі ваші підписки, прочитані статті та налаштування зберігаються на вашому сервері. Ніхто, крім вас, не має до них доступу.
  • Приватність: Відсутність відстеження користувачів, реклами та монетизації ваших даних.
  • Відкритий вихідний код: Проєкт повністю прозорий, його можна аудитувати та модифікувати. Активна спільнота розробників постійно покращує та підтримує FreshRSS.
  • Кросплатформність: Доступ через веб-інтерфейс з будь-якого пристрою та підтримка API для мобільних клієнтів.
  • Низькі системні вимоги: FreshRSS ефективно працює навіть на скромних VPS-конфігураціях, що робить його економічно вигідним рішенням.
  • Гнучкість налаштування: Можливість тонкого налаштування зовнішнього вигляду, поведінки та інтеграцій.
  • Підтримка Docker: Спрощене розгортання та керування завдяки контейнеризації, що особливо зручно для користувачів VPS.

FreshRSS у контексті VPS: контроль та приватність

Вибір VPS для FreshRSS – це не просто технічне рішення, це філософія. Це вибір на користь цифрової незалежності. Коли ви використовуєте `freshrss self-hosted` на власному `freshrss vps`, ви отримуєте:
  • Ізоляція ресурсів: Ваш FreshRSS працює на виділених ресурсах, що гарантує стабільну продуктивність без впливу "сусідів" по хостингу.
  • Безпека: Ви самостійно налаштовуєте фаєрвол, SSH-доступ та інші заходи безпеки, адаптуючи їх під свої потреби.
  • Гнучкість масштабування: У міру зростання ваших потреб (збільшення кількості підписок, користувачів) ви можете легко масштабувати ресурси VPS.
  • Доступність: Ваш FreshRSS доступний 24/7 з будь-якої точки світу, де є інтернет.
Self-хостинг FreshRSS на VPS – це інвестиція у ваш інформаційний простір. Це рішення для тих, хто цінує приватність, надійність та повний контроль над своїми цифровими активами.

Системні вимоги FreshRSS і як вибрати відповідний VPS?

FreshRSS відомий своєю легкістю та ефективністю, що робить його чудовим кандидатом для розгортання навіть на недорогих VPS. Однак оптимальні системні вимоги можуть варіюватися залежно від обсягу ваших RSS-підписок, частоти оновлення стрічок та кількості користувачів, які використовуватимуть ваш FreshRSS на сервері.

Мінімальні та рекомендовані конфігурації для FreshRSS

Для успішної `установки freshrss` та комфортної роботи необхідно враховувати наступні параметри: * **Операційна система:** Будь-який сучасний дистрибутив Linux (Ubuntu Server, Debian, CentOS, AlmaLinux, Rocky Linux). Рекомендується вибирати LTS-версії для стабільності. * **Процесор (CPU):** FreshRSS не є CPU-інтенсивним додатком. * Мінімум: 1 vCPU з тактовою частотою 1.0 GHz або вище. * Рекомендується: 2 vCPU з частотою 2.0 GHz або вище для кращої чутливості при великій кількості стрічок або користувачів. * **Оперативна пам'ять (RAM):** Один з найважливіших ресурсів. PHP-FPM та база даних (SQLite або MySQL/PostgreSQL) споживають основну частину RAM. * Мінімум: 1 GB RAM (для FreshRSS зі SQLite та невеликою кількістю стрічок). * Рекомендується: 2-4 GB RAM (для FreshRSS з MySQL/PostgreSQL, великою кількістю стрічок та кількома користувачами). Якщо ви плануєте запускати інші сервіси на цьому ж VPS, то 4 GB і більше будуть оптимальними. * **Дисковий простір:** Залежить від обсягу кешованих статей та обраної бази даних. NVMe-диски значно прискорюють роботу бази даних. * Мінімум: 10-15 GB NVMe SSD (для ОС, Docker та FreshRSS зі SQLite). * Рекомендується: 25-50 GB NVMe SSD (для MySQL/PostgreSQL, великої кількості статей та запасу на майбутнє). * **Мережа:** Стабільне інтернет-з'єднання з пропускною здатністю 100 Mbps або 1 Gbps. Для FreshRSS зазвичай не потрібна висока пропускна здатність, але стабільність важлива для своєчасного оновлення стрічок.

Вибір типу VPS: KVM проти OpenVZ для FreshRSS

При виборі VPS для FreshRSS ви зіткнетеся з різними технологіями віртуалізації. Дві найпоширеніші – це KVM та OpenVZ. * **OpenVZ:** Старіша технологія, що використовує контейнерну віртуалізацію. Вона економічна, але має низку обмежень: немає власного ядра Linux, що може створювати проблеми з деякими специфічними налаштуваннями або Docker у специфічних режимах; ресурси часто "перепродаються" (overselling), що може призвести до нестабільної продуктивності в години пік. Ми не рекомендуємо OpenVZ для FreshRSS, особливо якщо ви плануєте використовувати Docker, оскільки можуть виникнути проблеми з cgroups та ядром. * **KVM (Kernel-based Virtual Machine):** Сучасна та повноцінна апаратна віртуалізація. Кожен KVM VPS працює як незалежний фізичний сервер зі своїм власним ядром Linux. Це забезпечує кращу ізоляцію, стабільність та передбачувану продуктивність. KVM ідеально підходить для `freshrss docker` та інших контейнеризованих додатків. Valebyte.com пропонує KVM VPS, що гарантує максимальну сумісність та продуктивність для ваших проєктів. Для більш глибокого розуміння відмінностей, рекомендуємо ознайомитися з нашою статтею: KVM VPS vs OpenVZ VPS у 2026: все ще актуально. Вибір KVM VPS забезпечить вам надійну основу для FreshRSS та інших сервісів, які ви, можливо, захочете розмістити.

Для наочності, ось таблиця рекомендованих конфігурацій VPS від Valebyte.com залежно від ваших потреб:

Сценарій використання vCPU RAM Диск (NVMe SSD) Орієнтовна ціна/міс. (від) Коментар
Персональний FreshRSS (до 100 стрічок, 1 користувач) 1 ядро 1 GB 15-25 GB $5 - $8 Ідеально для індивідуального використання зі SQLite.
Сімейний FreshRSS (до 500 стрічок, 2-5 користувачів) 2 ядра 2 GB 25-50 GB $8 - $15 Рекомендується MySQL/PostgreSQL, хороша продуктивність.
Командний FreshRSS (до 2000+ стрічок, 5-20 користувачів) 2-4 ядра 4-8 GB 50-100 GB $15 - $30 Високе навантаження, потрібна оптимізація БД та кешування.

Ці ціни є орієнтовними та можуть варіюватися залежно від провайдера та регіону. Valebyte.com пропонує конкурентні тарифи з високопродуктивними NVMe SSD та стабільними KVM VPS.

Шукаєте надійний сервер для ваших проєктів?

VPS від $10/міс та виділені сервери від $9/міс з NVMe, DDoS-захистом та підтримкою 24/7.

Переглянути пропозиції →

Підготовка вашого VPS для встановлення FreshRSS з Docker

Перед тим як приступити до `установки freshrss`, необхідно підготувати ваш VPS. Ми будемо використовувати Docker та Docker Compose для максимально простого та надійного встановлення. Цей підхід дозволяє ізолювати FreshRSS та його залежності від основної системи, спрощує керування та оновлення.

Оновлення системи та встановлення Docker Engine

Першим кроком завжди має бути оновлення операційної системи. Це гарантує, що у вас встановлені останні патчі безпеки та актуальні версії пакетів. Підключіться до вашого VPS по SSH. Якщо ви новачок у роботі з серверами, рекомендуємо ознайомитися з нашою статтею Що таке сервер і дедік: Повний посібник для початківців.

sudo apt update && sudo apt upgrade -y
Після оновлення встановіть необхідні пакети, які дозволять `apt` використовувати репозиторій по HTTPS:

sudo apt install ca-certificates curl gnupg lsb-release -y
Додайте офіційний ключ GPG Docker:

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
Додайте репозиторій Docker до списку джерел APT:

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Оновіть список пакетів ще раз, щоб включити новий репозиторій Docker:

sudo apt update
Тепер встановіть Docker Engine, Docker CLI та containerd:

sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
Перевірте, що Docker встановлено та працює коректно:

sudo systemctl status docker
sudo docker run hello-world
Ви повинні побачити повідомлення про те, що Docker працює, та "Hello from Docker!". Для того щоб не використовувати `sudo` щоразу при роботі з Docker, додайте свого користувача до групи `docker` (замініть `your_username` на ім'я вашого користувача):

sudo usermod -aG docker your_username
newgrp docker
Після виконання `newgrp docker` ви зможете використовувати `docker` без `sudo` у поточній сесії. Для постійного ефекту може знадобитися перезапуск SSH-сесії.

Встановлення Docker Compose

У сучасних версіях Docker Engine, Docker Compose йде як плагін (`docker-compose-plugin`), який ми вже встановили разом з Docker Engine. Викликається він командою `docker compose` (з пробілом). Перевірити версію Docker Compose можна так:

docker compose version
Якщо з якоїсь причини у вас стара версія Docker або ви віддаєте перевагу класичному `docker-compose` (з дефісом), його можна встановити окремо:

sudo curl -L "https://github.com/docker/compose/releases/download/v2.27.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
Ми будемо використовувати сучасний синтаксис `docker compose` у цій статті. Тепер ваш VPS готовий для розгортання `freshrss docker`. Контейнеризація значно спрощує керування додатками, докладніше про переваги контейнерів ви можете дізнатися в нашій статті Контейнери vs ВМ vs Bare-metal: хостинг-картина 2026.
rocket_launch Швидкий вибір

Шукаєте сервер, який просто працює?

Valebyte VPS — NVMe, підтримка 24/7, розгортання за 60 секунд.

Переглянути тарифи VPS arrow_forward

Покрокове встановлення FreshRSS на VPS з Docker Compose

Тепер, коли Docker та Docker Compose встановлені, ми можемо приступити до безпосередньої `установки freshrss` на ваш `freshrss vps`. Ми будемо використовувати офіційні Docker-образи FreshRSS та базу даних MariaDB (сумісна з MySQL) для забезпечення надійності та продуктивності. Використання окремої бази даних є кращим для великих інсталяцій, хоча FreshRSS підтримує і SQLite.

Створення файлу `docker-compose.yml` для FreshRSS

Створіть директорію для вашого FreshRSS проєкту та перейдіть до неї. Наприклад:

mkdir ~/freshrss
cd ~/freshrss
Тепер створіть файл `docker-compose.yml` за допомогою текстового редактора (наприклад, `nano` або `vim`):

nano docker-compose.yml
Вставте наступний вміст у файл. Цей файл описує два сервіси: `db` (база даних MariaDB) та `freshrss` (додаток FreshRSS).

version: '3.8'

services:
  db:
    image: mariadb:10.6
    container_name: freshrss_db
    restart: unless-stopped
    env_file:
      - .env
    volumes:
      - ./db_data:/var/lib/mysql

  freshrss:
    image: freshrss/freshrss:latest
    container_name: freshrss_app
    restart: unless-stopped
    depends_on:
      - db
    env_file:
      - .env
    volumes:
      - ./freshrss_data:/var/www/FreshRSS/data
    ports:
      - "8080:80" # Тимчасовий порт для початкового налаштування, буде прихований проксі
Збережіть та закрийте файл (Ctrl+X, Y, Enter для `nano`). Тепер створіть файл `.env` у тій самій директорії. Цей файл міститиме змінні оточення, включаючи облікові дані для бази даних. Це безпечніше, ніж жорстко кодувати їх у `docker-compose.yml`.

nano .env
Вставте наступний вміст, замінивши `YOUR_MYSQL_ROOT_PASSWORD`, `YOUR_MYSQL_USER`, `YOUR_MYSQL_PASSWORD` та `YOUR_MYSQL_DATABASE` на надійні, унікальні значення.

# Конфігурація бази даних для MariaDB
MYSQL_ROOT_PASSWORD=YOUR_MYSQL_ROOT_PASSWORD
MYSQL_USER=YOUR_MYSQL_USER
MYSQL_PASSWORD=YOUR_MYSQL_PASSWORD
MYSQL_DATABASE=YOUR_MYSQL_DATABASE

# Деталі підключення до бази даних FreshRSS
# Використовуємо ім'я сервісу 'db' як хост, оскільки вони в одній Docker-мережі
CRON_MIN=0
CRON_HOUR=2
CRON_DAYOFMONTH=*
CRON_MONTH=*
CRON_DAYOFWEEK=*
DB_TYPE=mysql
DB_HOST=db
DB_NAME=${MYSQL_DATABASE}
DB_USER=${MYSQL_USER}
DB_PASSWORD=${MYSQL_PASSWORD}
Збережіть та закрийте файл `.env`. Переконайтеся, що дозволи для файлу `.env` обмежені, щоб лише ваш користувач міг його читати:

chmod 600 .env

Запуск контейнерів та початкове налаштування FreshRSS

Тепер, коли файли `docker-compose.yml` та `.env` готові, запустіть контейнери:

docker compose up -d
Опція `-d` запускає контейнери у фоновому режимі. Docker Compose завантажить образи (якщо їх немає), створить контейнери та запустить їх. Це може зайняти кілька хвилин. Перевірте статус запущених контейнерів:

docker compose ps
Ви повинні побачити, що контейнери `freshrss_db` та `freshrss_app` знаходяться в статусі `Up`. Тепер відкрийте веб-браузер і перейдіть за адресою `http://ВАША_IP_АДРЕСА_VPS:8080`. Ви повинні побачити сторінку привітання FreshRSS. 1. **Вибір мови:** Виберіть бажану мову та натисніть "Далі". 2. **Перевірка вимог:** FreshRSS перевірить системні вимоги. Якщо все гаразд, натисніть "Далі". 3. **Налаштування бази даних:** * Тип бази даних: Виберіть `MySQL (MariaDB, Percona Server)`. * Хост: `db` (це ім'я сервісу бази даних у `docker-compose.yml`). * Порт: `3306` (стандартний порт MySQL). * Ім'я користувача: `YOUR_MYSQL_USER` (з вашого файлу `.env`). * Пароль: `YOUR_MYSQL_PASSWORD` (з вашого файлу `.env`). * Ім'я бази даних: `YOUR_MYSQL_DATABASE` (з вашого файлу `.env`). Натисніть "Далі". FreshRSS спробує підключитися до бази даних. Якщо підключення успішне, ви побачите повідомлення про це. 4. **Створення адміністратора:** Створіть обліковий запис адміністратора, вказавши логін та надійний пароль. Запам'ятайте їх. Після цього FreshRSS буде готовий до використання. Ви успішно завершили базове `встановлення freshrss` на ваш `freshrss vps`.

Важливі параметри конфігурації FreshRSS

FreshRSS надає безліч налаштувань, які можна змінити через веб-інтерфейс або вручну в конфігураційних файлах (хоча через інтерфейс зручніше). * **Частота оновлення:** За замовчуванням FreshRSS оновлює стрічки кожні кілька годин. Ви можете налаштувати це в розділі "Конфігурація" -> "Оновлення". Для більшості користувачів достатньо оновлювати стрічки раз на 1-2 години. Занадто часті оновлення можуть збільшити навантаження на VPS та споживання трафіку. * **API для мобільних клієнтів:** У розділі "Аутентифікація" -> "API" ви можете згенерувати токен для використання FreshRSS з мобільними додатками, такими як Reeder, Fiery Feeds, NetNewsWire (iOS/macOS) або FeedMe (Android). * **Теми та стилі:** FreshRSS підтримує різні теми оформлення, які можна вибрати в розділі "Візуалізація". * **Користувачі:** FreshRSS підтримує кількох користувачів. Ви можете створити окремі облікові записи для членів сім'ї або команди, кожна зі своїми підписками та налаштуваннями. * **Кешування:** Для покращення продуктивності FreshRSS кешує деякі дані. Переконайтеся, що каталог `data/cache` доступний для запису контейнеру FreshRSS. Пам'ятайте, що `freshrss self-hosted` дає вам повну свободу в налаштуванні, але також покладає на вас відповідальність за її безпеку та продуктивність.

Налаштування зворотного проксі (Nginx/Caddy) та HTTPS для FreshRSS на сервері

Прямий доступ до FreshRSS через порт 8080 (як ми налаштували вище) не є безпечним та професійним рішенням. Вам потрібен зворотний проксі-сервер, який прийматиме запити на стандартних портах (80 для HTTP, 443 для HTTPS), перенаправлятиме їх до контейнера FreshRSS і, найголовніше, забезпечуватиме шифрування трафіку за допомогою HTTPS. Це критично важливо для захисту ваших даних та облікових записів. Ми розглянемо два популярні варіанти зворотного проксі: Nginx та Caddy. Обидва чудово справляються з цим завданням, але мають свої особливості. Caddy часто простіший у налаштуванні для HTTPS, оскільки він автоматично керує сертифікатами Let's Encrypt.

Навіщо потрібен зворотний проксі та HTTPS?

* **Безпека (HTTPS):** Шифрує весь трафік між вашим браузером та FreshRSS, захищаючи ваші логіни, паролі та вміст статей від перехоплення. Це базовий стандарт для будь-якого веб-сервісу. * **Зручність:** Дозволяє отримати доступ до FreshRSS за доменним ім'ям (наприклад, `https://rss.yourdomain.com`) замість IP-адреси та порту. * **Централізація:** Якщо ви плануєте розміщувати кілька веб-сервісів на одному VPS, зворотний проксі може маршрутизувати трафік до різних контейнерів/додатків на основі доменного імені. * **Додаткові функції:** Зворотний проксі може виконувати кешування, балансування навантаження, стиснення даних та інші оптимізації. Перед налаштуванням вам знадобиться зареєстроване доменне ім'я та A-запис, що вказує на IP-адресу вашого VPS. Наприклад, `rss.yourdomain.com` має вказувати на IP вашого сервера.

Конфігурація Nginx для FreshRSS

Спочатку встановіть Nginx на ваш VPS:

sudo apt install nginx -y
sudo systemctl enable nginx
sudo systemctl start nginx
Створіть новий файл конфігурації Nginx для FreshRSS. Замініть `rss.yourdomain.com` на ваше реальне доменне ім'я.

sudo nano /etc/nginx/sites-available/freshrss
Вставте наступний вміст:

server {
    listen 80;
    listen [::]:80;
    server_name rss.yourdomain.com;

    # Перенаправлення HTTP на HTTPS
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    server_name rss.yourdomain.com;

    # Налаштування SSL/TLS (будуть згенеровані Certbot)
    ssl_certificate /etc/letsencrypt/live/rss.yourdomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/rss.yourdomain.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/rss.yourdomain.com/chain.pem;

    # Додаткові налаштування безпеки SSL
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";
    ssl_prefer_server_ciphers on;
    add_header X-Frame-Options "SAMEORIGIN" always;
    add_header X-Content-Type-Options "nosniff" always;
    add_header X-XSS-Protection "1; mode=block" always;
    add_header Referrer-Policy "no-referrer-when-downgrade" always;
    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

    location / {
        proxy_pass http://localhost:8080; # Перенаправляємо на порт контейнера FreshRSS
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_buffering off; # Вимикаємо буферизацію для кращої роботи з потоками
    }
}
Збережіть та закрийте файл. Активуйте конфігурацію, створивши символічне посилання та видаливши дефолтну:

sudo ln -s /etc/nginx/sites-available/freshrss /etc/nginx/sites-enabled/
sudo rm /etc/nginx/sites-enabled/default
Перевірте синтаксис Nginx:

sudo nginx -t
Якщо помилок немає, перезавантажте Nginx:

sudo systemctl reload nginx
Тепер Nginx налаштований, але HTTPS поки не працює, оскільки немає сертифікатів.

Конфігурація Caddy для FreshRSS

Caddy – це сучасний веб-сервер з автоматичною підтримкою HTTPS через Let's Encrypt. Його налаштування часто простіше, ніж у Nginx. Спочатку встановіть Caddy. Додайте репозиторій Caddy:

sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy -y
Створіть файл конфігурації Caddyfile:

sudo nano /etc/caddy/Caddyfile
Вставте наступний вміст, замінивши `rss.yourdomain.com` на ваше доменне ім'я:

rss.yourdomain.com {
    reverse_proxy localhost:8080
    
    # Додаткові заголовки безпеки
    header {
        Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
        X-Frame-Options "SAMEORIGIN"
        X-Content-Type-Options "nosniff"
        X-XSS-Protection "1; mode=block"
        Referrer-Policy "no-referrer-when-downgrade"
    }
}
Збережіть та закрийте файл. Перевірте конфігурацію Caddy:

sudo caddy validate --config /etc/caddy/Caddyfile
Якщо все гаразд, перезавантажте Caddy:

sudo systemctl reload caddy
Caddy автоматично отримає SSL-сертифікат від Let's Encrypt для вашого домену.

Автоматизація HTTPS з Let's Encrypt (для Nginx)

Якщо ви вибрали Nginx, вам знадобиться Certbot для отримання та автоматичного оновлення SSL-сертифікатів. Встановіть Certbot та плагін для Nginx:

sudo apt install certbot python3-certbot-nginx -y
Запустіть Certbot для отримання сертифіката. Переконайтеся, що Nginx запущений і ваш домен вже вказує на IP VPS.

sudo certbot --nginx -d rss.yourdomain.com
Certbot проведе вас через процес, запитає email для сповіщень та згоду з умовами. Він автоматично оновить конфігурацію Nginx для використання HTTPS. Після успішного отримання сертифіката, Certbot також налаштує автоматичне оновлення сертифікатів. Перевірте роботу автоматичного оновлення:

sudo systemctl status certbot.timer
Тепер ваш FreshRSS доступний по HTTPS через `https://rss.yourdomain.com`. Порт 8080 більше не потрібен і має бути закритий у зовнішній мережі (наприклад, фаєрволом). Вітаємо! Ваш `freshrss на сервері` тепер працює через безпечне HTTPS-з'єднання. Якщо ви розмірковуєте над тим, як забезпечити додаткову безпеку для ваших self-hosted додатків, розгляньте використання систем автентифікації, таких як Authentik на VPS: встановлення, налаштування та обслуговування або Authelia на VPS: встановлення, налаштування та обслуговування.

Обслуговування FreshRSS: бекапи, оновлення та моніторинг

Розгортання FreshRSS на VPS – це лише початок. Для забезпечення стабільної, безпечної та актуальної роботи вашого агрегатора RSS-стрічок необхідно регулярно проводити обслуговування. Це включає резервне копіювання даних, своєчасне оновлення FreshRSS та його компонентів, а також моніторинг стану системи.

Стратегії резервного копіювання даних FreshRSS

Резервне копіювання – це ваш рятівний круг у випадку непередбачених збоїв, помилок конфігурації або проблем з VPS. Для FreshRSS, розгорнутого з Docker Compose, необхідно виконувати бекап двох основних компонентів: 1. **Дані FreshRSS:** Це конфігурація додатка, кеш, дані про користувачів тощо. Зберігаються у томі `freshrss_data`. 2. **База даних:** Усі ваші підписки, прочитані статті, вибране – це найцінніше. Зберігається у томі `db_data`. Рекомендована стратегія бекапу: * **Зупинка сервісів (опціонально, але рекомендується):** Для узгодженості даних найкраще зупиняти контейнери перед бекапом, особливо базу даних.

    cd ~/freshrss
    docker compose stop
    
* **Бекап бази даних:** Використовуйте `mysqldump` з контейнера бази даних.

    docker compose exec db sh -c 'exec mysqldump -u YOUR_MYSQL_USER -pYOUR_MYSQL_PASSWORD YOUR_MYSQL_DATABASE' > backup_$(date +%F_%H-%M-%S).sql
    
Замініть `YOUR_MYSQL_USER`, `YOUR_MYSQL_PASSWORD` та `YOUR_MYSQL_DATABASE` на ваші реальні значення. Зверніть увагу, що пароль вказується без пробілу після `-p`. * **Бекап файлових даних FreshRSS:** Просто скопіюйте директорію `freshrss_data`.

    tar -czvf freshrss_data_backup_$(date +%F_%H-%M-%S).tar.gz freshrss_data
    
* **Бекап конфігурації Docker Compose:** Файли `docker-compose.yml` та `.env` також важливі.

    cp docker-compose.yml backup_$(date +%F_%H-%M-%S)_docker-compose.yml
    cp .env backup_$(date +%F_%H-%M-%S)_.env
    
* **Перезапуск сервісів:**

    docker compose start
    
* **Зберігання бекапів:** Не зберігайте бекапи на тому ж VPS! Використовуйте віддалене сховище (S3-сумісне сховище, хмарне сховище, інший сервер по SFTP). Автоматизуйте цей процес за допомогою скриптів та cron-завдань.

Процес оновлення FreshRSS та Docker-контейнерів

Регулярні оновлення важливі для отримання нових функцій, виправлень помилок та патчів безпеки. * **Оновлення Docker-образів:**

    cd ~/freshrss
    docker compose pull
    docker compose up -d
    
Команда `docker compose pull` завантажить останні версії образів, зазначених у `docker-compose.yml`. `docker compose up -d` створить нові контейнери на основі цих образів, видаливши старі, але зберігши томи даних. * **Оновлення операційної системи:** Не забувайте регулярно оновлювати сам VPS:

    sudo apt update && sudo apt upgrade -y
    sudo apt autoremove -y
    
Після оновлення ядра Linux може знадобитися перезавантаження сервера: `sudo reboot`. * **Оновлення Nginx/Caddy та Certbot:** Ці компоненти також оновлюються через менеджер пакетів ОС. **Важлива рекомендація:** Перед великими оновленнями завжди робіть бекап!

Моніторинг стану FreshRSS та VPS

Моніторинг дозволяє своєчасно виявляти проблеми з продуктивністю, доступністю або безпекою. * **Журнали Docker:** Перевіряйте логи контейнерів FreshRSS та бази даних на наявність помилок:

    docker compose logs freshrss
    docker compose logs db
    
* **Використання ресурсів VPS:** Використовуйте інструменти, такі як `htop`, `top`, `free -h`, `df -h` для моніторингу CPU, RAM та дискового простору. * **Системи моніторингу:** Для більш просунутого моніторингу розгляньте встановлення спеціалізованих інструментів. Наприклад, Netdata – це чудовий інструмент для моніторингу ресурсів VPS у реальному часі, який легко встановлюється та надає обширну інформацію через веб-інтерфейс. Дізнайтеся більше про нього в нашій статті: Netdata на VPS: встановлення, налаштування та обслуговування. * **Моніторинг HTTP/HTTPS:** Переконайтеся, що ваш домен FreshRSS доступний ззовні. Можна використовувати онлайн-сервіси моніторингу доступності.

Нумерований список рекомендацій по обслуговуванню FreshRSS:

  1. Автоматизуйте бекапи: Налаштуйте cron-завдання для регулярного створення бекапів бази даних та файлів, а також їх переміщення до віддаленого сховища.
  2. Регулярно оновлюйте: Щомісяця або раз на два тижні перевіряйте та встановлюйте оновлення для ОС, Docker та FreshRSS.
  3. Перевіряйте логи: Періодично переглядайте логи контейнерів та системні логи на предмет помилок або попереджень.
  4. Використовуйте фаєрвол: Налаштуйте UFW або інший фаєрвол на VPS, щоб дозволити лише необхідні порти (22 для SSH, 80 та 443 для веб-сервера). Закрийте порт 8080 для зовнішнього доступу.
  5. Слідкуйте за дисковим простором: Переконайтеся, що на диску достатньо вільного місця, особливо якщо FreshRSS кешує багато статей.
  6. Налаштуйте сповіщення: Якщо можливо, налаштуйте сповіщення про критичні події (наприклад, збій бекапу, переповнення диска).
  7. Періодично тестуйте відновлення: Хоча б раз на рік спробуйте відновити FreshRSS з бекапу на тестовому сервері, щоб переконатися в працездатності вашої стратегії.
Регулярне та відповідальне обслуговування забезпечить довгу та безперебійну роботу вашого FreshRSS на VPS.
rocket_launch Швидкий вибір

Шукаєте сервер, який просто працює?

Valebyte VPS — NVMe, підтримка 24/7, розгортання за 60 секунд.

Переглянути тарифи VPS arrow_forward

Який VPS-конфіг Valebyte.com оптимальний для FreshRSS під реальне навантаження?

Вибір оптимального VPS для FreshRSS залежить від ваших поточних та майбутніх потреб. Valebyte.com пропонує різні тарифні плани, які можуть бути адаптовані під різні сценарії використання FreshRSS, від особистого агрегатора новин до рішення для невеликої команди. Головне — це знайти баланс між продуктивністю та вартістю, враховуючи специфіку `freshrss vps`.

Приклади тарифів Valebyte.com та їх застосування для FreshRSS

Представимо кілька типових конфігурацій та пояснимо, для кого вони підходять: * **"Мінімальний Старт" (1 vCPU, 1 GB RAM, 25 GB NVMe SSD):** * **Для кого:** Ідеально для одного користувача з невеликою кількістю підписок (до 100-200 стрічок). Це базовий тариф для тих, хто хоче спробувати `freshrss self-hosted` без значних витрат. Використовує SQLite для бази даних за замовчуванням, але можна налаштувати і MariaDB, якщо кількість статей не надто велика. * **Орієнтовна вартість:** від $5-7/місяць. * **Особливості:** Висока швидкість диска завдяки NVMe, що важливо навіть для невеликих баз даних. * **"Стандартний Користувач" (2 vCPU, 2 GB RAM, 50 GB NVMe SSD):** * **Для кого:** Оптимальний вибір для 2-5 користувачів або одного активного користувача з великою кількістю підписок (до 500-1000 стрічок). Дозволяє комфортно використовувати MariaDB/PostgreSQL, забезпечуючи хорошу чутливість інтерфейсу та стабільне оновлення стрічок. * **Орієнтовна вартість:** від $10-15/місяць. * **Особливості:** Додаткове ядро CPU та RAM дають більше простору для фонових завдань та потенційного зростання. * **"Просунутий Ентузіаст/Мала Команда" (4 vCPU, 4-8 GB RAM, 100 GB NVMe SSD):** * **Для кого:** Підходить для невеликих команд (5-20 користувачів) або користувачів, які підписуються на тисячі стрічок. Така конфігурація впорається з більш інтенсивними оновленнями, великим обсягом кешованих даних та забезпечить високу продуктивність навіть при одночасному доступі кількох користувачів. * **Орієнтовна вартість:** від $20-35/місяць. * **Особливості:** Значний обсяг RAM дозволяє базі даних ефективно кешувати дані, а додаткові vCPU справляються з піками навантаження.

Фактори, що впливають на вибір VPS для FreshRSS

При виборі тарифу VPS для `freshrss на сервері` враховуйте наступні аспекти: 1. **Кількість RSS-стрічок:** Чим більше стрічок, тим більше даних потрібно зберігати та обробляти. Це впливає на споживання диска та RAM. 2. **Частота оновлення:** Якщо ви налаштуєте дуже часті оновлення (наприклад, кожні 15 хвилин для сотень стрічок), це збільшить навантаження на CPU та I/O. 3. **Кількість користувачів:** Кожен активний користувач споживає ресурси. При багатокористувацькому використанні краще мати більше CPU та RAM. 4. **Інші сервіси на VPS:** Чи плануєте ви розміщувати щось ще на цьому ж VPS (наприклад, Kavita: встановлення, налаштування та обслуговування на VPS, AudioBookshelf: встановлення, налаштування та обслуговування на VPS, VPN-сервер)? Якщо так, то вам знадобиться більше ресурсів. 5. **Тип бази даних:** SQLite (за замовчуванням для FreshRSS) менш вимогливий до ресурсів, але менш масштабований. MySQL/MariaDB/PostgreSQL більш продуктивні та надійні для великих обсягів даних, але вимагають більше RAM та CPU. 6. **Бюджет:** Valebyte.com пропонує гнучкі тарифи, що дозволяють знайти оптимальне співвідношення ціни та продуктивності. Пам'ятайте, що інвестиції в більш потужний VPS можуть заощадити ваш час та нерви в довгостроковій перспективі. Valebyte.com спеціалізується на наданні високопродуктивних KVM VPS з NVMe-дисками, що забезпечує кращу продуктивність та надійність для `freshrss vps` та інших self-hosted додатків. Наші тарифи починаються від невеликих конфігурацій, ідеально придатних для персональних проєктів, і масштабуються до потужних серверів, здатних витримувати значні навантаження. Вибираючи Valebyte.com, ви отримуєте повний контроль над своїм сервером (self-managed VPS), що дозволяє налаштувати FreshRSS саме так, як вам потрібно. Докладніше про переваги такого підходу можна прочитати в нашій статті Self-managed vs Managed VPS у 2026: що обрати.

Висновки

Встановлення FreshRSS на VPS з використанням Docker Compose – це потужне рішення для тих, хто шукає повний контроль над своїми RSS-стрічками, цінує приватність та прагне цифрової незалежності. Дотримуючись покрокового посібника з підготовки VPS, розгортання контейнерів, налаштування безпечного доступу через зворотний проксі з HTTPS та впровадження стратегій обслуговування, ви зможете створити надійну та масштабовану платформу. Valebyte.com надає ідеальну інфраструктуру у вигляді KVM VPS з NVMe-дисками, забезпечуючи високу продуктивність та стабільність, необхідні для безперебійної роботи вашого FreshRSS.

Готові обрати сервер?

VPS та виділені сервери у 72+ країнах з миттєвою активацією та повним root-доступом.

Почати зараз →
support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.