Benutzer-Werkzeuge

Webseiten-Werkzeuge


ubuntu:subsonic

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
ubuntu:subsonic [2020/10/11 21:36] – [Apache Reverse Proxy] Sebastian Hetzelubuntu:subsonic [2024/12/28 14:32] (aktuell) – [DB-Connection-Timeout erhöhen] angelegt Sebastian Hetzel
Zeile 166: Zeile 166:
 ===== Nginx Reverse Proxy ===== ===== Nginx Reverse Proxy =====
  
-Inhalt folgt.+<file |h /etc/nginx/sites-available/subsonic.meine-domain.de > 
 +server { 
 +        server_name subsonic.meine-domain.de; 
 +        location / { 
 +                proxy_pass http://127.0.0.1:4040; 
 +                proxy_set_header Host $http_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_redirect http:// https://; 
 +        }
  
 +
 +    listen 443 ssl; # managed by Certbot
 +    ssl_certificate /etc/letsencrypt/live/subsonic.meine-domain.de/fullchain.pem; # managed by Certbot
 +    ssl_certificate_key /etc/letsencrypt/live/subsonic.meine-domain.de/privkey.pem; # managed by Certbot
 +    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
 +    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
 +
 +
 +    add_header Strict-Transport-Security "max-age=31536000" always; # managed by Certbot
 +
 +
 +    ssl_trusted_certificate /etc/letsencrypt/live/subsonic.meine-domain.de/chain.pem; # managed by Certbot
 +    ssl_stapling on; # managed by Certbot
 +    ssl_stapling_verify on; # managed by Certbot
 +
 +}
 +server {
 +    if ($host = subsonic.meine-domain.de) {
 +        return 301 https://$host$request_uri;
 +    } # managed by Certbot
 +
 +
 +        server_name subsonic.meine-domain.de;
 +        listen 80;
 +
 +
 +}
 +</file>
 ===== Apache Reverse Proxy ===== ===== Apache Reverse Proxy =====
  
Zeile 283: Zeile 321:
 </code> </code>
  
-===== Arbeiten auf der Datenbank =====+===== Automatischer Import der Playlists ===== 
 + 
 +Dazu hat Subsonic einen eigenen Ordner auf dem Filesystem. Der Pfad ist in der Konfiguration hinterlegt: 
 + 
 +{{:ubuntu:subsonic_settings_playlist-folder.png|}} 
 + 
 +Die M3U-Files müssen in diesem Ordner abgelegt werden. Dabei ist wichtig, dass die Pfade in den M3U-Dateien stimmen. Beim nächsten Folder-Scan wird auch der Playlist-Ordner berücksichtigt und die M3U-Dateien werden zu Playlists in Subsonic umgewandelt. 
 +===== Arbeiten auf der Datenbank (Built-in HSQLDB) =====
  
 Als Adminuser kann unter https://[subsonic-server.url]/db.view ein Webinterface aufgerufen werden, dass es ermöglicht, SQL-Statements ausführen zu lassen. Als Adminuser kann unter https://[subsonic-server.url]/db.view ein Webinterface aufgerufen werden, dass es ermöglicht, SQL-Statements ausführen zu lassen.
Zeile 309: Zeile 354:
 select count(*) from PLAYLIST_FILE where playlist_id=64; select count(*) from PLAYLIST_FILE where playlist_id=64;
 </code> </code>
 +
 +===== Externe Datenbank nutzen =====
 +
 +Es werden unterstützt
 +  * MySQL / MariaDB
 +  * PostgreSQL
 +
 +Eine Installation in eine PostgreSQL habe ich nicht ausprobiert. Daher sind diese Notizen alle auf **MariaDB / MySQL** bezogen!
 +
 +Einfach als Startparameter übergeben:
 +
 +''--db=<JDBC URL>'' unter SUBSONIC_ARGS in ''/etc/default/subsonic'' (Ubuntu/Debian):
 +
 +<code>SUBSONIC_ARGS="--max-memory=1500 --host=127.0.0.1 --port=4040 --db=jdbc:mysql://127.0.0.1:3306/subsonic?user=subsonic_user&password=xxx&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&requireSSL=false"</code>
 +
 +===== Datenbank und User anlegen =====
 +
 +<code |sql>
 +CREATE DATABASE IF NOT EXISTS subsonic;
 +CREATE USER 'subsonic_server'@localhost IDENTIFIED BY 'xxx';
 +GRANT ALL PRIVILEGES ON 'subsonic'.* TO 'subsonic_server'@localhost;
 +FLUSH PRIVILEGES;
 +</code>
 +
 +===== Probleme beim Scannen der Daten: Spaltengröße in DB anpassen =====
 +
 +<code |sql>
 +use subsonic;
 +ALTER TABLE album  MODIFY genre VARCHAR(256) NULL DEFAULT NULL;
 +ALTER TABLE  media_file MODIFY genre VARCHAR(256) NULL DEFAULT NULL;
 +ALTER TABLE genre MODIFY name VARCHAR(256) NOT NULL DEFAULT '';
 +quit;
 +</code>
 +
 +===== DB-Connection-Timeout erhöhen =====
 +
 +<file |h /etc/mysql/mariadb.conf.d/50-server.cnf>
 +[...]
 +wait_timeout = 7776000
 +[...]
 +</file>
ubuntu/subsonic.1602445013.txt.gz · Zuletzt geändert: von Sebastian Hetzel

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki