====== Mise en service de TTRSS avec Docker====== {{ :wiki:linux:ttrss.png?300 |}} Dans cette documentation nous installerons le logiciel TTRSS avec Docker. Pour mieux s'y retrouver cette documentation disposera de plusieurs screenshots illustrant les consignes. ## Préambule ### Présentation : Tiny Tiny RSS (souvent abrégé en TTRSS) est un lecteur et agrégateur RSS/ATOM Accessible ensuite depuis n'importe quel navigateur, il permet de s'abonner aux flux RSS ou ATOM des sites que vous souhaitez suivre afin de recevoir les derniers articles publiés. Une application officielle android est également disponible. Il propose de nombreux fonctionnalités telles que l'import / export OPML, le partage via RSS ou réseaux sociaux, l'ajout de plugins ou de thèmes, le support des podcasts, le filtrage des flux RSS, etc. Nous considérons que vous êtes équipé de cette manière : - Une VM sous Debian avec docker à installer **[node03]** Les allocations de matériel (CPU/RAM...) sont à allouer selon vos envies, attention à respecter la configuration minimale. C'est à dire : Pour **TTRSS** : - *512MB* de ram - *1* cœurs de CPU - *8GB* d'espace disque - *Debian 11* - *PHP 7.4* - *Docker* Nos IP pour notre infrastructure seront : - [TTRSS] : **10.192.100.123** Mot de passe par défaut sur toutes les sessions : **Not24get** Rappel des deux commandes essentiels : - ''ip a'' (connaitre son adresse IP) - ''nano /etc/network/interfaces'' (configuration de l'interface réseau) **Conseil :** Ajouter les deux machines dans un logiciel tel que mRemoteNG pour faciliter l'administration. # Installation de TTRSS ## Installation de Docker via le repo ### Ajout du dépôt - Ajouter les paquets pour installer des paquets depuis des sources sécurisées ```bash apt-get install \ ca-certificates \ curl \ gnupg ``` - Ajouter la clé GPG de Docker ``` mkdir -m 0755 -p /etc/apt/keyrings ``` ```bash curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg ``` - Ajouter le repo dans le ''sources.list'' ```bash echo \ "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \ tee /etc/apt/sources.list.d/docker.list > /dev/null ``` ### Installation du moteur Docker - Mettre à jour le nouveau dépôt ``` apt-get update ``` - Installation de Docker et de ses dépendances ```bash apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin ``` #### Essais Cette commande télécharge une image de test et l'exécute dans un conteneur. Lorsque le conteneur s'exécute, il imprime un message de confirmation et se ferme. ``` docker run hello-world ``` Si vous souhaiter changer le path de la ''data'' de docker : [https://www.ibm.com/docs/en/z-logdata-analytics/5.1.0?topic=compose-relocating-docker-root-directory](https://www.ibm.com/docs/en/z-logdata-analytics/5.1.0?topic=compose-relocating-docker-root-directory) {{ :wiki:linux:mremoteng_cirqy02xw8.png?500 |}} ## Installation de TTRSS ### Depuis le repo Github Cette image embarque un serveur web sous base nginx et un serveur SQL. - Cloner le repo Github de ''ttrss'' ``` git clone https://git.tt-rss.org/fox/ttrss-docker-compose.git ttrss-docker ``` ``` cd ttrss-docker ``` - Changer de branche vers ''static-dockerhub'' ``` git checkout static-dockerhub ``` - Configuration de l'environnement ``` mv .env-dist .env nano .env ``` Modifier le fichier selon votre volonté Attention à bien spécifier l'adresse EXACTE à partir de laquelle ''ttrss'' sera accessible (`TTRSS_SELF_URL_PATH=`) Définissez un mot de passe ''admin'' à la ligne (`ADMIN_USER_PASS=`) {{ :wiki:linux:mremoteng_vw5nagxfrt.png?450 |}} - Télécharger et démarrer le container ``` docker compose pull && docker compose up -d ``` {{ :wiki:linux:mremoteng_fwxikdutzv.png?500 |}} Visiter la page : `http://:8280/tt-rss` {{ :wiki:linux:firefox_bua4kanapd.png?450 |}} # Reverse proxy avec nginx {{ :wiki:linux:656px-apache-load-balancer-mod-proxy-http.png?400 |}} A partir d'un autre serveur nginx. ## Création de la config nginx - Créer une entrée ''A'' dans votre serveur DNS qui point vers l'ip de votre serveur - Exemple : ``` ttrss.stoneset.fr. IN A 10.192.100.209 ``` - Créer la configuration dans les *sites-available* : nano /etc/nginx/sites-available/proxy_ttrss.conf ```yaml server { server_name ttrss.stoneset.fr; location / { proxy_pass http://node03.local:8280; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } } ``` Spécifier un chemin relatif pour le lien ''proxy_pass'', il est défini dans ''/etc/hosts'' - Redémarrer nginx : ``` systemctl restart nginx ``` # Configuration de TTRSS Le compte par défaut est ''admin:password'' - Changer le mot de passe par défaut {{ :wiki:linux:firefox_stypu53t0i.png?600 |}} ## Ajouter un flux RSS {{ :wiki:linux:firefox_btbbdclohb.png?400 |}} {{ :wiki:linux:firefox_fprldxtkwr.png?400 |}} {{ :wiki:linux:firefox_x2yzygs7x0.png?800 |}} Une fois les flux ajoutés : {{ :wiki:linux:firefox_hm4bzocxwc-min.png?900 |}} - Liste de flux well-known RSS : - https://www.anandtech.com/rss - https://www.it-connect.fr/feed/ - https://rdr-it.com/feed/ - https://www.lesnumeriques.com/rss.xml - https://www.zdnet.fr/feeds/rss/actualites/ - https://www.01net.com/actualites/feed/ - https://www.lemondeinformatique.fr/flux-rss/thematique/telecom/rss.xml ## Mes sources 1. https://framalibre.org/content/tiny-tiny-rss 2. https://tt-rss.org/wiki/InstallationNotes 3. https://docs.docker.com/engine/install/debian/