Wie man einen RSS-Reader mit FreshRSS selbst hostet

Ein Foto von einem Laptop auf einem Tisch in einem Café.

FreshRSS ist ein einfacher und leicht bereitzustellender webbasierter RSS-Feed-Reader für Linux-Server. Ähnlich wie Tiny Tiny RSS funktioniert es, indem es eine saubere, plattformübergreifende Schnittstelle bereitstellt, auf die Sie über Ihren Webbrowser zugreifen können.

Dieser Artikel zeigt Ihnen, wie Sie FreshRSS auf Ubuntu installieren. Wir werden auch hervorheben, wie Sie den Reader für eine Mehrbenutzersitzung konfigurieren können.

Inhaltsverzeichnis

  • Warum FreshRSS?
  • FreshRSS installieren
  • Reverse Proxy und SSL einrichten
  • Zugriff auf und Konfiguration von FreshRSS

Warum FreshRSS?

Einer der größten Verkaufsargumente von FreshRSS ist, dass es mit einem integrierten Web-Scraper geliefert wird. Das bedeutet, dass Sie grundlegende RSS-Feeds sogar auf Websites erstellen können, die dies nicht unterstützen.

Ein Screenshot, der das Web-Scraping-Tool von FreshRSS zeigt.

FreshRSS unterstützt auch Push-Benachrichtigungen auf modernen Inhaltsplattformen. Infolgedessen kann die Plattform unglaublich schnell und reaktiv auf Beitragsaktualisierungen reagieren. Schließlich ist es auch einfach zu installieren, was es zu einem idealen Projekt für Anfänger macht, die gerade mit dem Selbst-Hosting beginnen.

Ein Screenshot, der eine vollständig laufende FreshRSS-Instanz zeigt.

FreshRSS installieren

Annahme: Dieser Artikel geht davon aus, dass Sie einen funktionierenden Domainnamen mit einem A- und PTR-Eintrag haben, der auf die IP-Adresse und den Hostnamen Ihrer VPS-Instanz verweist.

Wir werden Docker verwenden, um FreshRSS zu installieren.

Docker installieren

Holen Sie sich den Signaturschlüssel des Docker-Repositorys von der Projektwebsite:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg |sudo gpg --dearmor-o/etc/apt/keyrings/docker.gpg  
sudochmod a+r /etc/apt/keyrings/docker.gpg

Erstellen Sie eine neue Repository-Datei für Docker:

sudonano/etc/apt/sources.list.d/docker.list

Schreiben Sie die folgende Zeile Code in Ihre neue Repository-Datei:

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable

Aktualisieren Sie Ihre System-Repositorys, aktualisieren Sie Ihr System und installieren Sie die Docker-Binärdateien:

sudo apt update &&sudo apt upgrade  
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx

Erstellen des FreshRSS Docker-Containers

Erstellen Sie ein neues Verzeichnis im Home-Verzeichnis Ihres Benutzers für FreshRSS und wechseln Sie hinein:

mkdir ~/freshrss &&cd ~/freshrss

Erstellen Sie eine “docker-compose.yml”-Datei mit Ihrem bevorzugten Texteditor:

nano ./docker-compose.yml

Fügen Sie den folgenden Block Code in Ihre neue docker-compose-Datei ein:

---  
version: "2.4"  
volumes:  
  data: null  
  extensions: null  
services:  
  freshrss:  
    image: freshrss/freshrss:latest  
    build:  
      context: https://github.com/FreshRSS/FreshRSS.git#latest  
      dockerfile: Docker/Dockerfile-Alpine  
    container_name: freshrss  
    hostname: freshrss  
    restart: unless-stopped  
    logging:  
      options:  
        max-size: 10m  
    volumes:  
      - data:/var/www/FreshRSS/data  
      - extensions:/var/www/FreshRSS/extensions  
    ports:  
      - "8080:80"  
    environment:  
      TZ: Asia/Manila # ÄNDERN SIE ZU IHRER ZEITZONE  
      CRON_MIN: 3,33

Speichern Sie Ihre docker-compose.yml-Datei. Führen Sie den folgenden Befehl aus, um Ihren Docker-Container zu erstellen:

sudodocker compose up -d

Reverse Proxy und SSL einrichten

Sobald die FreshRSS-Instanz läuft, konfigurieren wir Nginx, um einen Reverse-Proxy einzurichten, damit Sie über Ihren Domainnamen öffentlich darauf zugreifen können.

Um zu beginnen, erstellen Sie eine Nginx-Website-Konfigurationsdatei für Ihre Instanz:

sudonano/etc/nginx/sites-available/freshrss

Fügen Sie den folgenden Block Code in Ihre neue Site-Konfigurationsdatei ein:

server {  
    listen 80;  
    listen [::]:80;  
  
    root                    /var/www/html;  
    server_name             freshrss.your-domain-name.here;  
  
    location /{  
        proxy_set_header    X-Forwarded-For $remote_addr;  
        proxy_set_header    Host $http_host;  
        proxy_set_header    X-Forwarded-Proto $scheme;  
        proxy_pass          http://localhost:8080;  
}  
}

Speichern Sie Ihre neue Site-Konfigurationsdatei und führen Sie den folgenden Befehl aus, um einen symbolischen Link zu “ /etc/nginx/sites-enabled” zu erstellen:

sudoln-s/etc/nginx/sites-available/freshrss /etc/nginx/sites-enabled/

Testen Sie Ihre Nginx-Konfiguration:

sudo nginx -t

Wenn alles in Ordnung ist, laden Sie Ihren Nginx-Server-Daemon neu und aktivieren Sie ihn beim Systemstart:

sudo systemctl reload nginx

SSL für Ihre Instanz aktivieren

Um ein SSL-Zertifikat zu erhalten, installieren Sie den Kern-Snap-Daemon auf Ihrem System:

sudo snap install core

Holen Sie sich das Zertifikat-Utility der Electronic Frontier Foundation (EFF) mit Snap:

sudo snap install certbot --classic

Registrieren Sie Ihre Certbot-Installation bei der EFF, indem Sie den folgenden Befehl ausführen:

sudo certbot register --agree-tos-m [email protected]

Fordern Sie ein SSL-Zertifikat für Ihre Instanz an, indem Sie den folgenden Befehl ausführen:

sudo certbot --nginx-d your-freshrss-domain-name

Zugriff auf und Konfiguration von FreshRSS

Öffnen Sie einen Webbrowser und navigieren Sie zur Adresse Ihrer neuen FreshRSS-Instanz. Klicken Sie auf die Dropdown-Liste auf der Seite und wählen Sie die Sprache aus, in der FreshRSS ausgeführt werden soll, und klicken Sie dann auf “Absenden.”

Ein Screenshot, der das Sprachwahl-Prompt für FreshRSS zeigt.

Dadurch wird das Selbsttestmodul von FreshRSS geladen, das überprüft, ob die aktuelle Instanz ordnungsgemäß läuft. Um fortzufahren, scrollen Sie zum Ende der Seite und klicken Sie auf “Gehe zum nächsten Schritt.”

Ein Screenshot, der das Abhängigkeitsprüfungs-Prompt zeigt.

Klicken Sie auf die Dropdown-Liste, wählen Sie “SQLite” und klicken Sie dann auf “Absenden.”

Ein Screenshot, der das Datenbankauswahl-Prompt zeigt.

Füllen Sie die Details des Administrators Ihrer Instanz aus und klicken Sie dann auf “Absenden”, um ihn zu erstellen.

Ein Screenshot, der die Administratorbenutzerdetails für diese Instanz zeigt.

Klicken Sie auf “Installation abschließen”, um Ihre neue FreshRSS-Instanz ordnungsgemäß zu starten.

Benutzerregistrierung aktivieren

Um zu beginnen, melden Sie sich bei Ihrem FreshRSS-Administrator-Konto an und klicken Sie dann auf das Zahnradsymbol in der oberen rechten Ecke der Seite.

Ein Screenshot, der die Schaltfläche Einstellungen für FreshRSS hervorhebt.

Scrollen Sie zur Kategorie “Verwaltung” und wählen Sie “Systemkonfiguration” aus.

Gehen Sie zur Unterkategorie “Benutzerregistrierungsformular”, klicken Sie auf das Dropdown-Feld neben dem “Registrierungsformular” und wählen Sie die Option “Aktiviert: Keine Begrenzung der Konten” aus.

Ein Screenshot, der den Registrierungsumschalter für die FreshRSS-Instanz zeigt.

Speichern Sie Ihre neue Site-Konfiguration, indem Sie auf die Schaltfläche “Absenden” am Ende der Seite klicken.

Daten eines bestehenden Benutzers löschen

Gehen Sie zu Ihrem FreshRSS-Administrator-Konto und klicken Sie dann auf das Zahnradsymbol in der oberen rechten Ecke der Seite.

Gehen Sie zur Kategorie “Verwaltung” und wählen Sie “Benutzer verwalten” aus.

Dies öffnet eine Seite mit einer Liste der aktuellen Benutzer in Ihrer FreshRSS-Instanz. Klicken Sie auf den Namen des Benutzers, den Sie deaktivieren möchten.

Ein Screenshot, der den anklickbaren Benutzernamen im Benutzerverwaltungs-Prompt hervorhebt.

Klicken Sie auf die Schaltfläche “Löschen”, um die RSS-Feeds des Benutzers zu löschen.

Ein Screenshot, der die Schaltfläche

Das Hosting Ihres eigenen webbasierten RSS-Feed-Readers ist nur der Anfang, um Ihre persönlichen Daten online zu übernehmen. Erfahren Sie, wie Sie Ihre eigene Video-Sharing-Website mit Peertube hosten können.

Bildnachweis: Yongma Seo über Unsplash und FreshRSS Github (Logo). Alle Änderungen und Screenshots von Ramces Red.