Tiny Tiny RSS unter Docker

update-freak

Benutzer
Mitglied seit
19. Feb 2018
Beiträge
402
Punkte für Reaktionen
36
Punkte
28
Hallo zusammen,

würde gerne Tiny Tiny RSS auf meiner Synology 716+ einrichten.
Zunächst die Frage: Soll ich auf das Community Package (Nachteil wäre die Abhängigkeit zu MariaDB 5, da es schon die 10 gibt) zurückgreifen oder es in Docker umsetzen (welches Docker-Image: das hier https://hub.docker.com/r/x86dev/docker-ttrss ?)
Was muss beachtet werden, wenn das in Docker eingerichtet wird?
 

Der Paul

Benutzer
Mitglied seit
04. Feb 2014
Beiträge
131
Punkte für Reaktionen
26
Punkte
28
Du kannst es auch ohne dem Community Package direkt aus git holen und mit PHP 7.2 und MariaDB 10 laufen lassen (habe ich auf meiner 916+ so gemacht)

Damit das Setup von TTRSS nicht meckert, muss vorher die DB angelegt sein:

Rich (BBCode):
usr/local/mariadb10/bin/mysql -u root -p
create database ttrss;
use mysql;
grant all on ttrss.* to root@localhost identified by 'SECRET_PASSWORD';
flush privileges;
quit

Die PHP-Umstellung dann in der config.php
Rich (BBCode):
define('PHP_EXECUTABLE', '/usr/local/bin/php72');

Einzig das Update über die daemons will bei mir nicht so recht, weshalb ich über den Task Scheduler gehe:
Rich (BBCode):
/usr/local/bin/php72 /var/services/web/tt-rss/update.php --feeds --quite

Im Scheduler lasse ich TTRSS dann auch nachts immer via git pull aktualisieren.
 

update-freak

Benutzer
Mitglied seit
19. Feb 2018
Beiträge
402
Punkte für Reaktionen
36
Punkte
28
danke für deinen Vorschlag.
Eine Frage zur Einrichtung
1. Habe MAriaDB10 installiert und danach den Code-Block 1 ausgeführt.
2. Dann mit $ git clone https://tt-rss.org/git/tt-rss.git /var/services/web/ttrss das Ganze heruntergeladen
3. Die config.php gibt es zu diesem Zeitpunkt noch nicht. Daher habe ich http://LINK_ZUM_NAS/ttrss/install/ aufgerufen.
Bekommt dort die Meldung:
SQLSTATE[HY000] [2002] No such file or directory
Unable to connect to database using specified parameters (driver: mysql).

Welchen Schritt muss ich bei 3. machen?
 
Zuletzt bearbeitet:

Der Paul

Benutzer
Mitglied seit
04. Feb 2014
Beiträge
131
Punkte für Reaktionen
26
Punkte
28
Hast Du denn das PHP Profil der WebStation für PHP7 konfiguriert? Also die für TTRSS notwendigen Extensions aktiviert? TTRSS benötigt zwingend die Extension pdo_mysql
 

update-freak

Benutzer
Mitglied seit
19. Feb 2018
Beiträge
402
Punkte für Reaktionen
36
Punkte
28
Wusste nicht, dass ich da noch was einstellen muss. Habe in der WebStation unter PHP7.0 jetzt pdo_mysql aktiviert. Unter Allgemeine Einstellungen steht bei PHP: Default Profile ( PHH 5.6 ) -> passt das?
Leider bekomme ich nachwievor diese Fehlermeldung von oben.
 

Der Paul

Benutzer
Mitglied seit
04. Feb 2014
Beiträge
131
Punkte für Reaktionen
26
Punkte
28
Wenn Du PHP7 verwenden willst, musst Du es natürlich auch aktivieren... Plus noch die ggf. anderen notwendigen Einstellungen vornehmen, wie einen virtual host etc.
 

update-freak

Benutzer
Mitglied seit
19. Feb 2018
Beiträge
402
Punkte für Reaktionen
36
Punkte
28
so habs hinbekommen. Einziges Problem noch: die Anmeldung unter tt-rss. Wie kann ich ein Benutzer erstellen?
Hab versucht über die Self-registration zu aktivieren, aber dort konnten keine E-Mails rausgeschickt werden.

EDIT: und noch was: wie kann ich es unter https://DYNDNS_ADRESSE/tt-rss verfügbar machen?
 

Der Paul

Benutzer
Mitglied seit
04. Feb 2014
Beiträge
131
Punkte für Reaktionen
26
Punkte
28
Benutzer anlegen: an TTRSS als Admin anmelden. Dann Preferences->Users->Create User.
Die Einstellungen für Mails findest Du in der config.php
Extern kannst Du TTRSS über einen Virtual Host in der WebStation verfügbar machen. Die URLs in der config musst Du danach aber auch dahingehend anpassen
 

update-freak

Benutzer
Mitglied seit
19. Feb 2018
Beiträge
402
Punkte für Reaktionen
36
Punkte
28
gut, danke! War nur anfangs verwirrt wie ich mich als Admin anmelde. Jetzt funktioniert alles
 

update-freak

Benutzer
Mitglied seit
19. Feb 2018
Beiträge
402
Punkte für Reaktionen
36
Punkte
28
musste vor kurzem alles neu einrichten:
Nun bekomme ich die Meldung, wenn ich http://192.168.178.31/tt-rss/install/ aufrufe

Rich (BBCode):
SQLSTATE[HY000] [2002] Connection refused
Unable to connect to database using specified parameters (driver: mysql).

curl, iconv, intl, mysqli, pdo_mysql ist aktiviert.
HTTP-Backend-Server: Ngnix
PHP: 7.2

Hat jemand eine Idee woran das liegen könnte?


EDIT: Fehler gefunden. Man muss MariaDB10 einmal starten und TCP/IP-Verbindungen aktivieren
 
Zuletzt bearbeitet:

update-freak

Benutzer
Mitglied seit
19. Feb 2018
Beiträge
402
Punkte für Reaktionen
36
Punkte
28
Ich habe Tiny Tiny RSS mit den folgenden Anweisungen eingerichtet.
Wie kann ich eine Aktualisierung vornehmen?
Oder ist es sinnvoll, zur Version unter Docker zu wechseln?

  1. Installieren von PHP 7.2, MariaDB 10, phpMyAdmin in der Paketzentrale
  2. in Webstation PHP 7.2 und die folgenden Dinge aktivieren: curl, iconv, intl, mysqli, pdo_mysql
  3. MariaDB 10 starten und die TCP/IP-Verbindung aktivieren
  4. Verbindung mit SSH herstellen und folgende Befehle eingeben:
    /usr/local/mariadb10/bin/mysql -u root -p
    create database ttrss;
    use mysql;
    quit
  5. Starten Sie phpMyAdmin und legen Sie neue Benutzer ttrss mit globalen Rechten an
  6. Mit SSH als Superuser verbinden und folgenden Befehl eingeben:
    git clone https://tt-rss.org/git/tt-rss.git /var/services/web/tt-rss
    cd /volume1/web/tt-rss/ && chmod -R 777 cache feed-icons lock
  7. Öffnen Sie http://NAS_URL/tt-rss/install/ und nehmen Sie die folgenden Einstellungen vor:
    Database type: MySQLUsername: ttrss
    Password: OBEN_DEFINIERT
    Database name: ttrss
    Host name: NAS_URL
    Port: 3307
  8. in der config.php den Befehl
    define('PHP_EXECUTABLE', '/usr/bin/php');
    durch
    define('PHP_EXECUTABLE', '/usr/local/bin/php72');
    ersetzen
  9. tt-rss-update.sh mit dem Inhalt erstellen und als geplante Aufgabe unter Synology einstellen:
    /usr/local/bin/php72 /volume1/web/tt-rss/update.php --feeds --quite
 

Der Paul

Benutzer
Mitglied seit
04. Feb 2014
Beiträge
131
Punkte für Reaktionen
26
Punkte
28
Docker ist m.E. weniger komplex, als die direkte Installation über Pakete.

Ich verwende den Postgres Container und TT-RSS von lunik1

Einfach über eine root Shell (sudo -i):


Code:
docker run -d --name ttrss-db -e POSTGRES_PASSWORD=<Passwort> -e POSTGRES_USER=TTRSS -e POSTGRES_DB=TTRSS -e TZ=Europe/Berlin -e PGDATA=/var/lib/postgresql/data --network=bridge -p <DeinGewünschterDBPort>:5432 -v /<DeinDockerPfad>/ttrss-db:/var/lib/postgresql/data postgres
docker run -d --name=ttrss -e PUID=<UserId> -e PGID=100 -e TZ=Europe/Berlin -p <DeinGewünschterTTRSSPort>:80 -v /<DeinDockerPfad>/ttrss:/config --restart unless-stopped lunik1/tt-rss:latest

PasswortBeliebiges Datenbank-Passwort
DeinDockerPfadPfad, (inkl. Volume) in dem die gemounteten Docker-Daten abgelegt werden sollen. Die Unterverzeichnisse werden automatisch angelegt
UserIdhier die ID des Users, unter dem Du TT-RSS laufen lassen willst (über id Benutzername in der Shell abfragbar)
DeinGewünschterDBPortPort, mit dem Du die DB im Netz erreichbar machen willst
DeinGewünschterTTRSSPortPort, unter dem Du TT-RSS erreichen willst

Anschließend ggf. noch in der Systemsteuerung einen ReverseProxy-Eintrag anlegen, damit Du TT-RSS über Deine Domain/Hostname auch via SSL erreichen kannst (weiterer Hosteintrag im Let'sEncrypt request reicht hier)

Jetzt in der TT-RSS config.php die Parameter anpassen:
DB_TYPEpgsql
DB_HOSTLokale IP Deiner Synology
DB_USERTTRSS
DB_NAMETTRSS
DB_PASSDas oben gewählte Passwort
DB_PORTDeinGewünschterDBPort
SELF_URL_PATHDer Pfad aus dem Reverse Proxy, also z.B. https://ttrss.meinedomain.xa

Nun einfach die URL zum TT-RSS aufrufen und dem Installationsassistenten folgen
 
  • Like
Reaktionen: update-freak

update-freak

Benutzer
Mitglied seit
19. Feb 2018
Beiträge
402
Punkte für Reaktionen
36
Punkte
28
Danke und großes Lob für deine ausführliche Anleitung!
Werde ich mir mal anschauen.
 

update-freak

Benutzer
Mitglied seit
19. Feb 2018
Beiträge
402
Punkte für Reaktionen
36
Punkte
28
Reicht das, wenn ich in der Webstation PHP 7.2 folgende Sachen aktiviere:
curl, intl, mysqli, pdo_mysql?
 

Der Paul

Benutzer
Mitglied seit
04. Feb 2014
Beiträge
131
Punkte für Reaktionen
26
Punkte
28
@update-freak : es gab vor geraumer Zeit ein grundsätzliches Update in TTRSS, durch das sich die Konfiguration aus der config.php verlagert hat. Da mir die (manuelle) Umstellung zu stressig war, bin ich auf den originalen docker compose von TTRSS (den environmet-file habe ich hart in den containern durch variablen ersetzt) umgestiegen:

YAML:
version: '3'


services:
  db:
    image: postgres:12-alpine
    container_name: ttrss-db
    restart: unless-stopped
    environment:
      - POSTGRES_USER=postgresuser
      - POSTGRES_PASSWORD=<geheim>
      - POSTGRES_DB=postgres
    volumes:
      - db:/var/lib/postgresql/data


  app:
    image: cthulhoo/ttrss-fpm-pgsql-static
    container_name: ttrss-app
    restart: unless-stopped
    environment:
      - TTRSS_SELF_URL_PATH=<meine_externe_url>/tt-rss
      - HTTP_PORT=<mein_interner_port>
      - TTRSS_DB_USER=postgres
      - TTRSS_DB_NAME=postgres
      - TTRSS_DB_PASS=<geheim>
    volumes:
      - app:/var/www/html
      - /volume1/docker/ttrss/config.d:/opt/tt-rss/config.d:ro
    depends_on:
      - db


  backups:
    image: cthulhoo/ttrss-fpm-pgsql-static
    container_name: ttrss-backup
    restart: unless-stopped
    environment:
      - TTRSS_SELF_URL_PATH=<meine_externe_url>/tt-rss
      - HTTP_PORT=<mein_interner_port>
      - TTRSS_DB_USER=postgres
      - TTRSS_DB_NAME=postgres
      - TTRSS_DB_PASS=<geheim>
    volumes:
      - /volume1/docker/ttrss/backup:/backups
      - app:/var/www/html
    depends_on:
      - db
    command: /opt/tt-rss/dcron.sh -f


  updater:
    image: cthulhoo/ttrss-fpm-pgsql-static
    container_name: ttrss-updater
    restart: unless-stopped
    environment:
      - TTRSS_SELF_URL_PATH=<meine_externe_url>/tt-rss
      - HTTP_PORT=<mein_interner_port>
      - TTRSS_DB_USER=postgres
      - TTRSS_DB_NAME=postgres
      - TTRSS_DB_PASS=<geheim>
    volumes:
      - app:/var/www/html
      - /volume1/docker/ttrss/config.d:/opt/tt-rss/config.d:ro
    depends_on:
      - app
    command: /opt/tt-rss/updater.sh


  web-nginx:
    image: cthulhoo/ttrss-web-nginx
    container_name: ttrss-web
    restart: unless-stopped
    ports:
      - <mein_interner_port>:80
    volumes:
      - app:/var/www/html:ro
    depends_on:
      - app


volumes:
  db:
  app:
  certs:
  backups:
 
  • Like
Reaktionen: update-freak


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat