FreshRSS : Agrégateur de flux RSS
Dans ce tutoriel, nous allons installer la solution FreshRSS sur un NAS Synology afin d'avoir un gestionnaire de flux RSS hébergé en local sur notre NAS ! L'installation sur une machine sous Linux (Debian, Ubuntu, etc.) est possible également.
Pour cette démonstration, je vais utiliser un NAS Synology avec DSM 7.1, en utilisant le paquet Docker pour mettre en place FreshRSS dans un container.
Mais au fait, c'est quoi FreshRSS ? Il s'agit d'un gestionnaire de flux RSS libre et open source, que vous pouvez héberger vous-même sur un NAS, un serveur, un ordinateur, etc... Sur le site officiel, on peut lire "FreshRSS est un agrégateur et lecteur de flux RSS. Il permet de regrouper l’actualité de plusieurs sites différents dans un endroit unique pour que vous puissiez la lire sans devoir aller de site en site."
Bien qu'il y ait d'autres alternatives diverses et variées (QuiteRSS, Netvibes, Inoreader, Feedly, voire même Outlook peut accueillir des flux RSS), FreshRSS est à mon sens l'un des meilleurs agrégateurs de flux RSS disponibles et que l'on peut auto-héberger.
Un gestionnaire de flux RSS est très intéressant pour faire une bonne veille technologique. En effet, dans une même interface, vous allez pouvoir visualiser les derniers articles mis en ligne par vos sites préférés ! Quand un nouvel article est ajouté, le flux RSS est mis à jour et donc l'information remonte dans votre interface FreshRSS. Ainsi, vous n'avez pas besoin d'aller sur chacun des sites : si un article vous intéresse, vous cliquez dessus, et vous serez redirigé vers le site en question, sur la page de l'article.
Au-delà de l'utiliser pour suivre les articles publiés sur divers sites (organisés par catégorie), vous pouvez l'utiliser pour suivre la sortie du release sur un projet GitHub (par exemple, une nouvelle version de PowerShell), ou encore une nouvelle alerte de sécurité émise par le CERT-FR ou un autre organisme. Le tout, c'est que le site / service mette à disposition des utilisateurs un flux RSS.
Mise en place du container FreshRSS
Commençons par créer un dossier nommé "freshrss" (attention à la casse) dans le répertoire "docker" de votre NAS à l'aide de l'explorateur File Station. Ce répertoire sera utilisé par le conteneur pour stocker la configuration de l'application. Vous pouvez aussi le créer en même temps que le conteneur.
Dans ce dossier, créez un répertoire nommé "extensions" : on l'utilisera pour stocker les extensions de FreshRSS.
Ensuite, il faut basculer sur Docker pour créer le conteneur. Cliquez sur "Conteneur" à gauche 1
, puis sur le bouton "Créer" 2
. Cliquez sur "Ajouter" 3
puis "Ajouter à partir d'une URL".
Ici, vous indiquez l'URL "freshrss/freshrss" ce qui va permettre de rechercher l'image sur Docker Hub directement. Cliquez sur "Ajouter" 1
, la fenêtre "Choisir un identification" va apparaître donc prenez la dernière version de FreshRSS via "latest" 2
. Validez via le bouton "Sélectionnez" 3
.
Remarque : preuve que cette image est officielle, on peut aussi effectuer le téléchargement à partir de la section "Registre" dans l'interface Docker.
Pour le réseau, conserver en mode "Bridge" car nous avons besoin que le conteneur utilise le réseau du NAS et nous devons modifier les associations de port (port interne au conteneur VS port externe au niveau du NAS).
En ce qui concerne les paramètres généraux... Commencez par donner un nom au conteneur, par exemple "freshrss" ou "syno-freshrss". Puis, cochez l'option "Activer le redémarrage automatique". Il n'est pas nécessaire de toucher aux autres options.
Avant de continuer, cliquez sur "Paramètres avancés" dans le but de définir quelques variables d'environnement propre à notre conteneur. Il y a 4 variables à définir :
- TZ : le fuseau horaire, donc ici "Europe/Paris" pour la France Métropolitaine
- CRON_MIN : quand faut-il rafraichir les flux RSS ? Ici, deux fois par heure, à la minute "10" et à la minute "40"
- FRESHRSS_ENV : mode "production"
- LISTEN : port local sur lequel écouter, on reste sur la valeur par défaut à savoir 80
Cliquez sur "Sauvegarder".
Passons à l'étape "Paramètres des ports". Pour le port du conteneur, vous devez conserver "80" car cela correspond au protocole HTTP. Par contre, pour le "Port local" vous devez indiquer un numéro de port qui n'est pas encore utilisé sur votre NAS. Par exemple, n'utilisez pas le port "8000" si vous l'utilisez pour un autre conteneur ou une autre application. Ici, je pars sur le numéro de port 8080. Cela signifie que FreshRSS sera accessible à cette adresse :
http://<IP du NAS>:8080
Comme je le disais précédemment, FreshRSS a besoin d'un dossier dans lequel stocker ses données, et surtout il est intéressant pour nous de pouvoir y accéder (pour déployer une extension FreshRSS, par exemple). C'est pour cette raison que nous avons créé le répertoire "freshrss" dans "docker".
Une fois à l'étape "Paramètres du volume", cliquez sur "Ajouter un dossier", sélectionnez le répertoire créé précédemment. Appliquez la configuration suivante :
- Associez "/docker/freshrss" à "/var/www/FreshRSS/data" pour les données globales de FreshRSS
- Associez "/docker/freshrss/extensions" à "/var/www/FreshRSS/extensions" pour stocker les extensions
Voilà, nous sommes à la dernière étape de la création du conteneur. Cliquez sur "Effectué" et le tour est joué !
Cette action a pour objectif de déployer le container Docker "FreshRSS" sur le NAS !
Si vous avez configuré le pare-feu de DSM sur votre boîtier, vous devez créer une règle pour autoriser les accès sur le port "8080". Pour rappel, voici le chemin pour accéder à la configuration du pare-feu : Panneau de configuration > Sécurité > Pare-feu.
Ensuite, vous pouvez également visualiser le container dans l'interface de Docker puis en cliquant sur "Conteneur". Vous devriez voir ceci :
Le container Docker FreshRSS est prêt : il héberge un serveur Web et les sources d'installation de l'application. Désormais, nous devons finaliser l'installation de FreshRSS.
Installation de FreshRSS
http://<IP du NAS>:8080
La première étape s'affiche !
Ensuite, il y a la vérification des dépendances. Ici, tous les feux sont au vert normalement ! 🙂 Donc, poursuivez.
L'étape 3 consiste à choisir le moteur de base de données. Le type de base de données SQLite me semble suffisant pour un agrégateur de flux RSS à usage personnel. Il n'y a pas besoin de performances folles, même si quelques utilisateurs se connectent dessus. Sinon, il y a toujours possibilité de se connecter sur un serveur MySQL ou PostgreSQL.
A l'étape 4, définissez un nom d'utilisateur et un mot de passe. Ce sera votre comte pour vous connecter au gestionnaire de flux RSS.
Cliquez sur le bouton "Terminer l'installation" : FreshRSS est installé !
Désormais, vous pouvez vous authentifier avec votre compte utilisateur (celui de FreshRSS, pas celui du NAS).
Voilà, l'interface de FreshRSS s'affiche avec le flux RSS de suivi des versions de FreshRSS inclus par défaut ! Bienvenue sur votre agrégateur de flux RSS !
En cliquant sur la roue crantée en haut à droite, vous pouvez accéder aux paramètres de l'application. Par exemple, la partie "Affichage" vous permettra de changer le thème. Je vous encourage à faire ce premier changement, car il y a des thèmes beaucoup plus sympas que celui d'origine !