One place for hosting & domains

      Ampache

      Installieren des Ampache Music Streaming-Servers unter Ubuntu 18.04


      Der Autor hat den Open Internet/Free Speech Fund dazu ausgewählt, eine Spende im Rahmen des Programms Write for DOnations zu erhalten.

      Einführung

      Ampache ist ein Open-Source Musik-Streaming-Server, der es Ihnen ermöglicht, Ihre digitale Musiksammlung auf Ihrem eigenen Server zu hosten und zu verwalten. Ampache kann Ihre Musik an Ihren Computer, Smartphone, Tablet oder Smart TV streamen. Das bedeutet, dass Sie keine Mehrfachkopien Ihrer Musik auf dem Gerät, das Sie zum Anhören verwenden möchten, verwalten müssen. Mit Ampache können Sie Ihre Sammlung auf Ihrem Server über die Webschnittstelle von Ampache verwalten und an jedem beliebigen Ort anhören.

      In diesem Tutorial werden Sie den Apache-Webserver und PHP installieren und konfigurieren, die Ihre Ampache-Instanz bedienen werden. Anschließend erstellen Sie eine MySQL-Datenbank, die Ampache zur Speicherung aller Betriebsinformationen verwendet. Abschließend werden Sie Ihre Musiksammlung hochladen, damit Sie mit dem Streaming Ihrer Musik beginnen können.

      Voraussetzungen

      Bevor Sie diese Anleitung beginnen, benötigen Sie Folgendes:

      • Einen Ubuntu-18.04-Server, der gemäß dem Tutorial Ersteinrichtung eines Servers mit Ubuntu 18.04 eingerichtet wurde, einschließlich eines non-root sudo user.
      • Auf Ihrem Server installiertes Apache, MySQL und PHP, wie in Installieren des Linux-, Apache-, MySQL-, PHP (LAMP)-Stacks unter Ubuntu 18.04 gezeigt.
      • Einen Domänennamen, der so konfiguriert ist, dass er auf Ihren Server verweist. Sie können lernen, wie Sie Domänen auf DigitalOcean Droplets verweisen, indem Sie dem Tutorial Einrichten eines Hostnamens mit DigitalOcean folgen.

      Schritt 1 — Installieren von Ampache

      In diesem Schritt laden Sie das Ampache-ZIP-Archiv auf Ihren Server herunter, entpacken es in das Home-Verzeichnis der Installation und nehmen einige notwendige Änderungen am Dateisystem vor.

      Melden Sie sich zunächst als non-root user bei Ihrem Server an. Erstellen Sie dann das Home-Verzeichnis von Ampache mit dem folgenden Befehl:

      • sudo mkdir /var/www/ampache

      Installieren Sie als Nächstes das Dienstprogramm zip, das Sie zum Entpacken des Ampache-Archivs benötigen:

      Laden Sie anschließend das ZIP-Archiv der neuesten Version herunter. Den Link zu der neuesten Version finden Sie auf der GitHub-Seite von Ampache. In diesen Beispielen wird Version 4.1.1 verwendet:

      • wget https://github.com/ampache/ampache/releases/download/4.1.1/ampache-4.1.1_all.zip

      Entpacken Sie dann das ZIP-Archiv in das Verzeichnis /var/www/ampache/ mit der Option -d:

      • sudo unzip ampache-4.1.1_all.zip -d /var/www/ampache/

      Legen Sie danach die Benutzer- und Gruppenidentität der Dateien von Ampache fest, sodass Apache die Ampache-Instanzdateien lesen, schreiben und ausführen kann:

      • sudo chown --recursive www-data:www-data /var/www/ampache/

      Die Option --recursive veranlasst chown, die Eigentümerschaft und die Gruppenidentität aller Dateien und des Unterverzeichnisses unter /var/www/ampache/ auf die Benutzer und Gruppen www-data von Apache zu ändern.

      Benennen Sie anschließend die .htaccess-Dateien, die im ZIP-Archiv enthalten sind, um. .htaccess-Dateien enthalten Sicherheits- und andere Betriebsinformationen für Apache, aber sie funktionieren nur mit der Dateierweiterung .htaccess. Benennen Sie die bereitgestellte .htaccess.dist-Datei mit den folgenden Befehlen in .htaccess um:

      • sudo mv /var/www/ampache/rest/.htaccess.dist /var/www/ampache/rest/.htaccess
      • sudo mv /var/www/ampache/play/.htaccess.dist /var/www/ampache/play/.htaccess
      • sudo mv /var/www/ampache/channel/.htaccess.dist /var/www/ampache/channel/.htaccess

      Jetzt erstellen Sie das Verzeichnis, das Ihre Musikdateien enthalten wird. Aus Sicherheitsgründen wird dieses Verzeichnis am besten außerhalb des Installationsverzeichnisses von Ampache angelegt. Auf diese Weise kann es nicht von böswilligen Web-Abfragen gelesen oder geändert werden, da es sich außerhalb des DocumentRoot von Ampache befindet.

      Erstellen Sie das Verzeichnis /data/Music mit dem folgenden Befehl:

      • sudo mkdir -p /data/Music

      Ändern Sie dann seinen Eigentümer und die Gruppenidentität, damit Apache es lesen und darin schreiben kann:

      • sudo chown www-data:www-data /data/Music

      Um die Einrichtung abzuschließen, installieren Sie FFmpeg, ein Dienstprogramm, das Audio und Video von einem Format in ein anderes konvertiert. Sie könnten es zum Beispiel verwenden, um eine MP3-Musikdatei in eine OPUS-Musikdatei zu konvertieren. Ampache verwendet FFmpeg, um Audio ohne Vorbereitung aus dem Format, in dem es hochgeladen wurde, in ein Format zu konvertieren, das das Wiedergabegerät abspielen kann. Dies ist ein Vorgang, der als Transkodierung bekannt ist.

      Dies ist nützlich, da nicht alle Geräte alle Musikformate wiedergeben können. Ampache kann erkennen, welche Formate auf dem Wiedergabegerät unterstützt werden, und Ihre Musik automatisch in dem unterstützten Format bereitstellen.

      Installieren Sie FFmpeg mit dem folgenden Befehl:

      Sie haben nun Ihre Ampache-Instanz entpackt und für das Web-Installationsprogramm vorbereitet sowie das Dienstprogramm FFmpeg installiert. Als Nächstes konfigurieren Sie Apache und PHP, um Ihre Ampache-Instanz zu bedienen.

      Schritt 2 – Konfigurieren von Apache und PHP

      In diesem Abschnitt konfigurieren Sie Apache, indem Sie eine neue VirtualHost-Datei erstellen, die die Konfiguration bereitstellt, die Apache zur Bedienung Ihrer Ampache-Serverdomäne benötigt. Sie werden auch einige zusätzliche PHP-Module installieren, die die Fähigkeiten von PHP erweitern, um die Anforderungen von Ampache abzudecken.

      Installieren Sie zunächst einige zusätzliche PHP-Module, die nicht in der Standardinstallation von PHP enthalten waren:

      • sudo apt install php-mysql php-curl php-json php-gd php7.2-xml

      Diese Module bieten die folgenden zusätzlichen Funktionen:

      • php-mysql – Ermöglicht PHP die Kommunikation mit einer MySQL-Datenbank.
      • php-curl – Ermöglicht PHP die Verwendung des Dienstprogramms curl zum Herunterladen von Dateien, wie beispielsweise Album-Cover-Kunst, von entfernten Servern.
      • php-json – Ermöglicht PHP, JSON-formatierte Textdateien zu lesen und zu bearbeiten.
      • php-gd – Ermöglicht PHP die Bearbeitung und Erstellung von Bilddateien.
      • php7.2-xml – Ermöglicht PHP das Lesen und Bearbeiten von XML-formatierten Textdateien.

      Aktivieren Sie anschließend einige Apache-Module mit dem Dienstprogramm a2enmod:

      • sudo a2enmod rewrite expires

      Diese Apache-Module ermöglichen Apache Folgendes:

      • rewrite – Modifizieren oder Neuschreiben von URLs nach den von Ampache gelieferten Regeln.
      • expires – Einstellen der Cache-Verfallszeiten für Objekte wie Bilder, damit diese von den Browsern effizienter gespeichert werden.

      Nun werden Sie die VirtualHost-Datei erstellen, die Apache mitteilt, wie und wo die Ampache-Instanz geladen werden soll.

      Anmerkung: Wenn Sie eine Testdatei VirutalHost erstellt haben, die Ihren Ampache-Domänennamen verwendet, als Sie dem Leitfaden “Installieren eines Linux-, Apache-, MySQL-, PHP (LAMP)-Stack unter Ubuntu 18.04″gefolgt sind, müssen Sie dises deaktivieren. Verwenden Sie zum Deaktiveren das Dienstprogramm a2dissite:

      • sudo a2dissite test_virtalhost_file

      Erstellen und öffnen Sie nun die VirtualHost-Datei mit Ihrem Texteditor unter /etc/apache2/sites-available/ampache.conf:

      • sudo nano /etc/apache2/sites-available/ampache.conf

      Fügen Sie die folgende VirtualHost-Vorlage in Ihre Datei ein:

      /etc/apache2/sites-available/ampache.conf

      <VirtualHost *:80>
      
          ServerName your_domain
          DocumentRoot /var/www/ampache
      
          <Directory /var/www/ampache/>
              AllowOverride All
              Require all granted
          </Directory>
      
          RewriteEngine on
          CustomLog /var/log/apache2/ampache.access.log common
          ErrorLog  /var/log/apache2/ampache.error.log
      
      </VirtualHost>
      

      Sie müssen your_domain in den Domänennamen ändern, den Sie auf Ihren Server umgeleitet haben. Wenn Sie die Bearbeitung dieser Datei abgeschlossen haben, speichern Sie sie und verlassen Sie den Editor.

      Die Anweisungen in dieser VirtualHost-Datei lauten:

      • ServerName – Der Domänenname, den Apache zur Bedienung Ihrer Ampache-Instanz verwendet.
      • DocumentRoot – Der Speicherort des Dateisystems auf Ihrem Server, an dem sich die Ampache-Instanz befindet. Dies ist der gleiche Ort, in den Sie in Schritt 1 das ZIP-Archiv entpackt haben.
      • Directory – Dieser Abschnitt übergibt eine Konfiguration an Apache, die für die im Pfad enthaltenen Dateien und Verzeichnisse gilt.
      • RewriteEngine – Aktiviert das Apache-Modul zum Neuschreiben von Dateien.
      • CustomLog – Erstellt eine Protokolldatei, die Apache zur Aufzeichnung aller Zugriffsprotokolle für Ihren Ampache-Server verwendet.
      • ErrorLog – Erstellt eine Protokolldatei, die Apache zur Aufzeichnung aller von Ihrem Ampache-Server erzeugten Fehlerprotokolle verwendet.

      Prüfen Sie anschließend mit dem Dienstprogramm apachectl, ob die von Ihnen erstellte VirtualHost-Datei fehlerfrei ist:

      • sudo apachectl configtest

      Wenn Ihre Konfiguration keine Fehler enthält, sehen Sie nach dem Befehl die folgende Ausgabe:

      Output

      Syntax OK

      Wenn Ihre Konfiguration Fehler enthält, werden in der Ausgabe der Dateiname und die Zeilennummer, in der der Fehler aufgetreten ist, ausgegeben.

      Anmerkung: Wenn Sie den Fehler sehen:

      AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
      

      Dann müssen Sie die Hauptkonfigurationsdatei von Apache unter /etc/apache2/apache2.conf bearbeiten und die folgende Zeile hinzufügen:

      ServerName your_domain
      

      Aktivieren Sie anschließend die neue VirtualHost-Konfiguration mit dem Dienstprogramm a2ensite:

      Die endgültige Konfiguration ist optional, wird jedoch empfohlen. Die Standardeinstellung für Datei-Uploads in PHP ist, dass Dateien, die größer als 2 MB sind, nicht hochgeladen werden können. Musikdateien neigen dazu, größer zu sein. Wenn Sie diesen Wert erhöhen, können Sie die Ampache-Schnittstelle verwenden, um größere Dateien in Ihrer Musiksammlung hochzuladen.

      Öffnen Sie /etc/php/7.2/apache2/php.ini mit dem folgenden Befehl:

      • sudo nano /etc/php/7.2/apache2/php.ini

      Und ändern Sie die folgenden Zeilen:

      /etc/php/7.2/apache2/php.ini

      . . .
      upload_max_filesize = 2M
      . . .
      post_max_size = 8M
      . . .
      

      Zu:

      /etc/php/7.2/apache2/php.ini

      . . .
      upload_max_filesize = 100M
      . . .
      post_max_size = 110M
      . . .
      

      Sie können nun Musikdateien bis zu 100 MB hochladen. Verwenden Sie einen größeren Wert, wenn Sie beabsichtigen, Dateien mit darüber hinausgehender Größe hochzuladen. Speichern und schließen Sie die Datei.

      Laden Sie abschließend Ihre aktualisierte Apache-Konfiguration neu:

      • sudo systemctl reload apache2.service

      Sie haben Apache jetzt so konfiguriert, dass Ampache über HTTP bedient wird. Als Nächstes erhalten Sie ein TLS-Zertifikat und konfigurieren Apache zur Verwendung desselben, sodass Sie über HTTPS sicher auf Ampache zugreifen können.

      Schritt 3 – Aktivieren von HTTPS

      In diesem Schritt erhalten Sie mit dem Dienstprogramm Certbot ein kostenloses Let’s Encrypt TLS-Zertifikat, das HTTPS ermöglicht. Certbot erstellt das Zertifikat, generiert automatisch die erforderliche Apache-Konfiguration und verwaltet die automatische Erneuerung des Zertifikats.

      Dies ist wichtig, denn Sie senden bei jeder Anmeldung bei Ampache Ihren Benutzernamen und Ihr Passwort über das Internet. Wenn Sie kein HTTPS verwenden, wird Ihr Passwort im Klartext verschickt, der auf seinem Weg durch das Internet gelesen werden kann.

      Die LTS-Veröffentlichungen von Ubuntu neigen dazu, nicht über die aktuellsten Pakete zu verfügen, und dies trifft auch auf das Certbot-Programm zu. Die Certbot-Entwickler unterhalten ein dediziertes Ubuntu-Repository, das als PPA bekannt ist, sodass Ubuntu-Benutzer eine aktuelle Kopie des Certbot verwenden können.

      Installieren Sie das Certbot-Repository mit dem folgenden Befehl:

      • sudo add-apt-repository ppa:certbot/certbot

      Installieren Sie nun das Dienstprogramm certbot:

      • sudo apt install python-certbot-apache

      Verwenden Sie anschließend certbot, um das TLS-Zertifikat zu erhalten:

      • sudo certbot --apache -d your_domain

      Die Option --apache verwendet das Apache-Plugin, das es Certbot ermöglicht, Apache automatisch zu lesen und zu konfigurieren. -d your_domain gibt den Domänennamen an, für den Cerbot das Zertifikat erstellen soll.

      Wenn Sie den Befehl certbot ausführen, werden Ihnen eine Reihe von Fragen gestellt. Sie werden zur Eingabe einer E-Mail-Adresse und der Zustimmung zu den Nutzungsbedingungen aufgefordert.

      Wenn certbot erfolgreich bestätigt, dass Sie Ihre Domäne kontrollieren, werden Sie aufgefordert, Ihre HTTPS-Einstellungen zu konfigurieren:

      Output

      Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. ------------------------------------------------------------------------------- 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. ------------------------------------------------------------------------------- Select the appropriate number [1-2] then [enter] (press 'c' to cancel):
      • No redirect: Apache bedient Ampache über HTTP und HTTPS.
      • Redirect: Apache leitet alle HTTP-Verbindungen automatisch zu HTTPS um. Das bedeutet, dass Ihr Ampache-Server nur über HTTPS verfügbar ist. Diese Option ist die sicherere und hat keinen Einfluss darauf, wie sich Ihre Ampache-Instanz verhält. Dies ist die empfohlene Wahl.

      Testen Sie abschließend, ob die automatische Erneuerung des Zertifikats erfolgreich abläuft, indem Sie den folgenden Befehl ausführen:

      • sudo certbot renew --dry-run

      Die Option --dry-run bedeutet, dass certbot einen Erneuerungsversuch testet, ohne dauerhafte Änderungen an Ihrem Server vorzunehmen. Wenn der Test erfolgreich war, enthält die Ausgabe die folgende Zeile:

      Output

      Congratulations, all renewals succeeded. The following certs have been renewed: /etc/letsencrypt/live/your_domain/fullchain.pem (success)

      Apache und PHP können nun Ihre Ampache-Instanz bedienen. Im nächsten Schritt erstellen und konfigurieren Sie die Datenbank von Ampache.

      Schritt 4 — Erstellen einer MySQL-Datenbank

      Ampache verwendet eine MySQL-Datenbank, um Informationen wie Wiedergabelisten, Benutzereinstellungen usw. zu speichern. In diesem Schritt erstellen Sie eine Datenbank und einen MySQL-Benutzer, mit denen Ampache auf diese Datenbank zugreift.

      Sie müssen drei Informationen auswählen, um die folgenden Anweisungen zur Erstellung der Datenbank von Ampache auszuführen:

      1. ampache_database: Der Name der Ampache-Datenbank.
      2. database_user: Der MySQL-Benutzer, den Ampache für den Zugriff auf die Datenbank verwenden wird. Dieser ist kein Systembenutzer und kann nur auf die Datenbank zugreifen.
      3. database_password: Das Passwort des Datenbankbenutzers. Achten Sie darauf, ein sicheres Passwort zu wählen.

      Notieren Sie sich diese Angaben, da Sie sie später benötigen werden.

      Öffnen Sie zunächst die interaktive MySQL-Shell mit dem Befehl mysql:

      • mysql --user=root --password

      --user=root öffnet die MySQL-Shell als root user von MySQL und --password fordert zur Eingabe des Passworts des root users auf.

      Der folgende Befehl erstellt eine leere Datenbank:

      • CREATE DATABASE ampache_database;

      Erstellen Sie anschließend den MySQL-Benutzer:

      • CREATE USER 'database_user'@'localhost' IDENTIFIED BY 'database_password';

      Geben Sie dem neuen Benutzer nun vollen Zugriff auf die Datenbank:

      • GRANT ALL PRIVILEGES ON ampache_database.* TO 'database_user'@'localhost';

      Überprüfen Sie abschließend, ob die neue Datenbank vorhanden ist, indem Sie den folgenden Befehl ausführen:

      Sie sehen die folgende Ausgabe:

      +--------------------+
      | Database           |
      +--------------------+
      | information_schema |
      | ampache_database  |
      | mysql              |
      | performance_schema |
      | sys                |
      +--------------------+
      5 rows in set (0.00 sec)
      

      Verlassen Sie die MySQL-Shell durch Eingabe von exit;.

      Testen Sie abschließend die Datenbank, den Benutzernamen und das Passwort, indem Sie versuchen, sich mit dem database_user an der MySQL-Shell anzumelden.

      Geben Sie den folgenden Befehl ein, um sich als neuer Benutzer an der MySQL-Shell anzumelden:

      • mysql --user=database_user --password ampache_database

      Sie haben nun die Datenbank erstellt, die Ampache verwenden wird. Sie haben Ihre Serverkonfiguration abgeschlossen und sind bereit, die Installation mit dem Webinstaller abzuschließen.

      Schritt 5 — Verwenden des Webinstallers

      In diesem Schritt verwenden Sie den Webinstaller von Ampache, um die Installation abzuschließen, indem Sie Ampache die Informationen geben, die es zum Ausführen benötigt, wie z. B. einen Weboberflächen-Adminbenutzer, die Datenbankdetails und andere Einstellungen.

      Beginnen Sie die Web-Installation, indem Sie https://your_domain in Ihren Browser eingeben.

      Wählen Sie die Installationssprache

      Wählen Sie die Sprache der Benutzeroberfläche von Ampache und klicken Sie auf die Schaltfläche Start Configuration, um fortzufahren.

      Anforderungen

      Auf dieser Seite überprüft Ampache, ob der Server die Anforderungen erfüllt. Jede Zeile auf dieser Seite stellt einen Test dar, den das Installationsprogramm durchführt, um sicherzustellen, dass z. B. alle erforderlichen PHP-Module vorhanden sind und funktionieren. Sie werden sehen, dass jeder Test mit einem grünen Häkchen versehen ist, um anzuzeigen, dass Ihr Server für Ampache bereit ist.

      Klicken Sie auf die Schaltfläche Continue, um zur nächsten Seite zu gelangen.

      Einfügen der Ampache-Datenbank (Insert Ampache Database)

      Diese Seite erstellt die Datenbank von Ampache, falls sie nicht existiert, und formatiert sie. Füllen Sie die Felder wie folgt aus:

      • Desired Database Name: ampache_database
      • MySQL Hostname: localhost
      • MySQL Port (optional):<EMPTY>
      • MySQL Administrative Username: database_user
      • MySQL Administrative Password: database_password
      • Create Database:<UNCHECKED>
      • Create Tables (ampache.sql):<CHECKED>
      • Create Database User:<UNCHECKED>

      Bild des ausgefüllten Formulars

      Klicken Sie auf die Schaltfläche Insert Database, um fortzufahren.

      Erstellen der Konfigurationsdatei (Generate Configuration File)

      Diese Seite erstellt die Konfigurationsdatei, die Ampache zur Ausführung verwenden wird. Füllen Sie die Felder wie folgt aus:

      • Web Path:<EMPTY>

      • Database Name: ampache_database

      • MySQL Hostname: localhost

      • MySQL Port (optional):<EMPTY>

      • MySQL Username: database_user

      • MySQL Password: database_password

      Bild des ausgefüllten Formulars

      • Installation Type Belassen Sie dies bei der Standardeinstellung.

      • Allow Transcoding Wählen Sie aus der Dropdown-Liste ffmpeg aus.

      • Players Belassen sie diese bei den Standardeinstellungen.

      Klicken Sie auf die Schaltfläche Create Config, um fortzufahren.

      Erstellen des Admin-Kontos (Create Admin Account)

      Diese Seite erstellt den ersten Benutzer der Weboberfläche. Dieser Benutzer wird mit vollen administrativen Berechtigungen erstellt und ist derjenige, mit dem Sie sich zum ersten Mal anmelden und Ampache konfigurieren werden.

      Wählen Sie einen Benutzernamen und ein sicheres Passwort und geben Sie es in die Felder Password und Confirm Password ein.

      Klicken Sie auf die Schaltfläche Create Account, um fortzufahren.

      Ampache Update

      Auf dieser Seite werden alle administrativen Änderungen an der Datenbank von Ampache durchgeführt, die vorgenommen werden müssen. Diese Änderungen werden bei Versions-Upgrades vorgenommen, aber da es sich um eine Neuinstallation handelt, wird das Installationsprogramm keine Änderungen vornehmen.

      Klicken Sie auf die Schaltfläche Update Now!, um fortzufahren.

      Ampache Update

      Diese Seite zeigt und erklärt alle Aktualisierungen, die das Installationsprogramm im vorherigen Schritt vorgenommen hat. Sie sollten keine Aktualisierungen aufgelistet sehen.

      Klicken Sie auf den Link [Return to main page] (Zurück zur Hauptseite), um mit der Anmeldeseite fortzufahren. Geben Sie Ihren Benutzernamen und Ihr Passwort ein, das Sie für die Anmeldung bei Ihrem Ampache-Server festgelegt haben.

      Ampache ist noch nicht ganz fertig eingerichtet und nicht ganz einsatzbereit. Sie schließen nun die Einrichtung ab, indem Sie Ihre Musik hinzufügen, damit Sie Ihren neuen Ampache-Server nutzen können.

      Schritt 6 — Hinzufügen Ihrer Musik zu Ampache

      Ein Musikserver nützt nichts, wenn keine Musik zur Wiedergabe vorhanden ist. In diesem Schritt werden Sie einen Musikkatalog konfigurieren und Musik hochladen. „Catalog“ ist der Name, den Ampache einer Musiksammlung gibt. Ampache kann Musik aus vielen Quellen sowohl auf dem Server als auch außerhalb des Servers lesen, aber in diesem Tutorial werden Sie Ihre Musik auf den Server hochladen und in einem lokalen Katalog, wie Ampache ihn bezeichnet, speichern.

      Klicken Sie zunächst auf den Link add a Catalog in der folgenden Zeile auf der ersten Seite, die Sie sehen, wenn Sie sich bei Ampache anmelden.

      No Catalog configured yet. To start streaming your media, you now need to add a Catalog.

      Dadurch gelangen Sie zu der Seite Add Catalog. Füllen Sie die Felder wie folgt aus:

      • Catalog Name: Geben Sie dem Katalog einen kurzen, einprägsamen Namen.
      • Catalog Type: local
      • Filename Pattern:<EMPTY>
      • Folder Pattern: Belassen Sie dies mit den Standardeinstellungen.
      • Gather Art:<CHECKED>
      • Build Playlists from Playlist Files. (m3u, m3u8, asx, pls, xspf):<UNCHECKED>
      • Path: /data/Music

      Bild des ausgefüllten Formulars Katalog hinzufügen

      Klicken Sie auf die Schaltfläche Add Catalog, um diese Seite abzuschließen.

      Auf der folgenden Seite klicken Sie auf die Schaltfläche Continue. Sie gelangen auf die Seite Show Catalogs, auf der die Details zu dem von Ihnen erstellten Katalog angezeigt werden. Sie können die Katalogeinstellungen jederzeit später ändern.

      Aktivieren Sie nun die Web-Upload-Funktion von Ampache, indem Sie auf das dritte Navigationssymbol klicken, um die erweiterten Einstellungen zu öffnen:

      Bild des dritten Einstellungssymbols

      Scrollen Sie nach unten zu dem Abschnitt Server Config und klicken Sie auf den Link System, um die Seite mit den Systemeinstellungen zu öffnen.

      Suchen Sie die Zeile Allow user uploads und wählen Sie Enable aus dem Dropdown-Menü in der Spalte Value.

      Sie können auch wählen, welche Benutzerebene Musikdateien hochladen darf. Die Standardebene ist Catalog Manager, die es dem Catalog Manager und allen Benutzern mit höheren Berechtigungen ermöglicht, Musik hochzuladen. In diesem Fall ist das der Administrator.

      Sie müssen auch den Katalog festlegen, zu dem die Musik hinzugefügt werden soll. Legen Sie dies mit der Zeile Destination catalog fest. Wählen Sie in der Dropdown-Liste Value den von Ihnen erstellten Katalog aus.

      Bild mit Darstellung der Zeilen „Upload erlauben“ und „Zielkatalog“

      Klicken Sie am unteren Ende der Seite auf die Schaltfläche Update Preferences, um die Konfiguration abzuschließen. Sie können nun Musik hochladen.

      Klicken Sie zunächst auf das erste Einstellungensymbol:

      Symbol zeigt das erste Einstellungensymbol

      Klicken Sie dann im Abschnitt Music auf den Link Upload.

      Bild zeigt Link zum Upload

      Klicken Sie auf der Seite Upload die Schaltfläche Browse und suchen Sie Ihre Musikdateien auf Ihrem Computer und laden Sie sie hoch.

      Wenn Sie die Angaben Artist und Album leer lassen, liest Ampache die ID3-Tags der Musikdateien, um den Künstler und das Album automatisch zu ermitteln. Nachdem Sie einige Musikdateien hochgeladen haben, können Sie diese nun finden, indem Sie auf die Links Songs, Albums oder Artists im Abschnitt Music in der Navigationsleiste auf der linken Seite klicken.

      Ihr Ampache-Musikserver ist nun bereit, mit dem Streaming Ihrer Musik zu beginnen.

      Zusammenfassung

      In diesem Artikel haben Sie einen Ampache-Musik-Streaming-Server installiert und konfiguriert und einen Teil Ihrer Musik hochgeladen. Jetzt können Sie Ihre Musik überall auf jedem Ihrer Geräte wiedergeben. Die Dokumentation von Ampache hilft Ihnen bei der Verwendung und Erweiterung Ihres Streaming-Servers. Diese Android-Apps und diese iOS-App werden Ihre Musik auf Ihr Handy streamen. Ampache organisiert Ihre Musik auf dem Server anhand der ID3-Tags in den Musikdateien. Das Programm MusicMrainz hilft Ihnen bei der Verwaltung der ID3-Tags Ihrer Musikdateien.



      Source link

      Установка Ampache Music Streaming Server на Ubuntu 18.04


      Автор выбрал фонд Open Internet/Free Speech для получения пожертвований в рамках программы Write for DOnations.

      Введение

      Ampache — это сервер для потоковой трансляции музыки с открытым исходным кодом, который позволяет публиковать и управлять вашей цифровой музыкальной коллекцией на своем собственном сервере. Ampache может транслировать поток музыки на ваш компьютер, смартфон, планшет или телевизор с поддержкой технологии Smart TV. Вам больше не придется хранить вашу коллекцию музыки отдельно на каждом устройстве для прослушивания. Ampache позволит вам управлять вашей музыкой на сервере при помощи веб-интерфейса Ampache и прослушивать ее в любом месте, где бы вы не находились.

      В этом руководстве вы установите и настроите веб-сервер Apache и PHP, который будет обслуживать ваш экземпляр Ampache. Затем вы создадите базу данных MySQL, которая будет использоваться Ampache для хранения всей рабочей информации. В заключении вы загрузите свою коллекцию музыки для дальнейшей потоковой трансляции.

      Предварительные требования

      Для прохождения этого обучающего руководства вам потребуется следующее:

      • Один сервер Ubuntu 18.04, настроенный в соответствии с инструкциями по начальной настройке сервера с Ubuntu 18.04, а также non-root, sudo user.
      • Apache, MySQL, и PHP, установленные на вашем сервере согласно инструкциям из Установка стека Linux, Apache, MySQL, PHP (LAMP) на Ubuntu 18.04.
      • Доменное имя, настроенное так, чтобы указывать на ваш сервер. Вы можете узнать, как указывать домены на DigitalOcean Droplet, из руководства Настройка имени хоста с помощью DigitalOcean.

      Шаг 1 — Установка Ampache

      На этом шаге вы загрузите ZIP-архив Ampache на ваш сервер, распакуете его в домашнюю директорию для установки и внесете необходимые системные изменения.

      Войдите на сервер как non-root user. Создайте домашнюю директорию Ampache с помощью следующей команды:

      • sudo mkdir /var/www/ampache

      Установите утилиту zip для распаковки архива Ampache:

      Загрузите ZIP-архив с последней версией. Ссылка на последнюю версию находится на странице Ampache GitHub. В этом руководстве используется версия 4.1.1​:

      • wget https://github.com/ampache/ampache/releases/download/4.1.1/ampache-4.1.1_all.zip

      Распакуйте ZIP-архив в директорию /var/www/ampache/, используя опцию -d:

      • sudo unzip ampache-4.1.1_all.zip -d /var/www/ampache/

      Определите пользователя и групповую принадлежность файлов Ampache, чтобы Apache смог считывать, записывать и выполнять файлы экземпляра Ampache:

      • sudo chown --recursive www-data:www-data /var/www/ampache/

      Опция --recursive позволяет команде chown менять владельца и групповую принадлежность всех файлов, а также поддиректорию в /var/www/ampache на пользователя и группу www-data Apache.

      Переименуйте файлы .htaccess в ZIP-архиве. Файлы .htaccess содержат информацию по безопасности и рабочие данные Apache. Эти файлы могут работать только с расширением .htaccess. Переименуйте полученные файлы .htaccess.dist в .htaccess​​, выполнив следующие команды:

      • sudo mv /var/www/ampache/rest/.htaccess.dist /var/www/ampache/rest/.htaccess
      • sudo mv /var/www/ampache/play/.htaccess.dist /var/www/ampache/play/.htaccess
      • sudo mv /var/www/ampache/channel/.htaccess.dist /var/www/ampache/channel/.htaccess

      Далее вы создадите директорию для ваших музыкальных файлов. В целях обеспечения безопасности эта директория не должна находиться в директории с установочными файлами Ampache. Это защитит ее от считывания и злоумышленники не смогут внести изменения в нее, так как она будет находиться за пределами DocumentRoot​​​ Ampache.

      Создайте директорию /data/Music с помощью следующей команды:

      • sudo mkdir -p /data/Music

      Измените владельца и групповую принадлежность, чтобы Apache мог выполнять считывание и запись файлов:

      • sudo chown www-data:www-data /data/Music

      Для завершения настройки установите утилиту FFmpeg для конвертации аудио и видео из одного формата в другой. Например, вы сможете использовать ее для конвертации музыкального файла из MP3 формата в формат OPUS. Ampache использует FFmpeg для быстрой конвертации аудиофайла из формата загрузки в формат для проигрывания на устройстве. Этот процесс называется транскодингом.

      Он удобен, так как многие устройства не поддерживают воспроизведение всех форматов музыкальных файлов. Ampache может определять форматы, поддерживаемые устройством, и автоматически конвертировать загружаемые файлы в нужный формат.

      Установите FFmpeg с помощью следующей команды:

      Распаковка завершена, вы подготовили ваш экземпляр Ampache для веб-установщика и установили утилиту FFmpeg. Далее вы настроите Apache и PHP для обслуживания вашего экземпляра Ampache.

      Шаг 2 — Настройка Apache и PHP

      В этом разделе вы настроите Apache, создадите новый файл VirtualHost, который будет определять конфигурацию Apache для обслуживания вашего домена сервера Ampache. Вы также установите дополнительные модули PHP, расширяющие возможности PHP для удовлетворения требований Ampache

      Установите несколько дополнительных модулей PHP, которые не были включены в пакет установки PHP по умолчанию:

      • sudo apt install php-mysql php-curl php-json php-gd php7.2-xml

      Эти модули обеспечат следующие дополнительные возможности:

      • php-mysql​​​ — обеспечивает связь между PHP и базой данных MySQL.
      • php-curl​​​ — позволяет PHP использовать утилиту curl для загрузки файлов, например, обложек альбомов с внешних серверов.
      • php-json — позволяет PHP считывать и работать с текстовыми файлами в формате JSON.
      • php-gd​​​ — позволяет PHP создавать и работать с файлами изображений.
      • php7.2-xml​​​ – позволяет PHP создавать и работать с файлами в формате XML.

      Включите пару модулей Apache с помощью утилиты a2enmod:

      • sudo a2enmod rewrite expires

      Эти модули позволяют Apache выполнять следующее:

      • rewrite — изменяет или перезаписывает URL-адреса согласно правилам Ampache.
      • expires — определяет период хранения объектов, например, изображений, для повышенной эффективности хранения данных в браузере.

      Сейчас вы создадите файл VirtualHost, указывающий Apache на то, как и откуда загрузить экземпляр Ampache.

      Примечание. Если вы создали тестовый файл VirtualHost, в котором используется ваше доменное имя Ampache, созданное по инструкциям из руководства «Установка стека Linux, Apache, MySQL, PHP (LAMP) на Ubuntu 18.04», вы должны выключить его. Для выключения воспользуйтесь утилитой a2dissite:

      • sudo a2dissite test_virtalhost_file

      Создайте и откройте файл VirtualHost в текстовом редакторе в /etc/apache2/sites-available/ampache.conf:

      • sudo nano /etc/apache2/sites-available/ampache.conf

      Добавьте следующий шаблон VirtualHost в ваш файл:

      /etc/apache2/sites-available/ampache.conf

      <VirtualHost *:80>
      
          ServerName your_domain
          DocumentRoot /var/www/ampache
      
          <Directory /var/www/ampache/>
              AllowOverride All
              Require all granted
          </Directory>
      
          RewriteEngine on
          CustomLog /var/log/apache2/ampache.access.log common
          ErrorLog  /var/log/apache2/ampache.error.log
      
      </VirtualHost>
      

      Измените your_domain​​ на доменное имя, которое вы перенаправили на ваш сервер. После завершения сохраните файл и выйдите из редактора.

      Директивы в файле VirtualHost:

      • ServerName — доменное имя, которое Apache будет использовать для обслуживания вашего экземпляра Ampache.
      • DocumentRoot — местоположение файловой системы на вашем сервере с установленным экземпляром Ampache. Оно совпадает с местом распаковки ZIP-архива на шаге 1.
      • Directory — этот раздел передает конфигурацию в Apache, которая применяется ко всем файлам и директориям в составе пути.
      • RewriteEngine — позволяет выполнить перезапись модуля Apache.
      • CustomLog — создает файл журнала, который будет использовать Apache для записи всех сеансов доступа для вашего сервера Ampache.
      • ErrorLog — создает файл журнала, который будет использовать Apache для записи всех ошибок, создаваемых сервером Ampache.

      Используя утилиту apachecl, проверьте файл VirtualHost на отсутствие ошибок:

      • sudo apachectl configtest

      Если ошибки отсутствуют, после команды вы увидите следующий результат:

      Output

      Syntax OK

      Если в конфигурации содержатся ошибки, в результате будет указано имя файла и номер строки, где была обнаружена ошибка.

      Примечание. В случае обнаружения ошибки:

      AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
      

      Отредактируйте файл основной конфигурации Apache в /etc/apache2/apache2.conf и добавьте следующую строку:

      ServerName your_domain
      

      Активируйте новую конфигурацию VirtualHost с помощью утилиты a2ensite:

      Конечная конфигурация необязательна, но рекомендуется. По умолчанию в PHP нельзя загружать файлы размером, превышающим 2 Мб. Музыкальные файлы обычно имеют больший размер, поэтому увеличение значения по умолчанию позволит использовать интерфейс Ampache для загрузки файлов большего размера в вашу коллекцию музыки.

      Откройте /etc/php/7.2/apache2/php.ini с помощью следующей команды:

      • sudo nano /etc/php/7.2/apache2/php.ini

      Внесите изменения в следующие строки:

      /etc/php/7.2/apache2/php.ini

      . . .
      upload_max_filesize = 2M
      . . .
      post_max_size = 8M
      . . .
      

      До:

      /etc/php/7.2/apache2/php.ini

      . . .
      upload_max_filesize = 100M
      . . .
      post_max_size = 110M
      . . .
      

      Теперь вы сможете загружать музыкальный файлы размером до 100 Мб. Введите большее значение для загрузки файлов большего размера. Сохраните и закройте файл.

      Перезагрузите обновленную конфигурацию Apache:

      • sudo systemctl reload apache2.service

      Вы только что настроили Apache для обслуживания Ampache через HTTP. Далее вы получите сертификат TLS, произведете настройку Apache для защиты доступа к Ampache через HTTPS.

      Шаг 3 — Активация HTTPS

      На этом шаге вы получите бесплатный TLS сертификат Let’s Encrypt TLS с помощью утилиты Certbot, который активирует протокол HTTPS. Certbot создаст сертификат, автоматически сгенерирует требуемую конфигурацию для Apache и произведет автоматическое обновление сертификата.

      Это важно, поскольку при каждом входе в Ampache вы будете отсылать ваше имя пользователя и пароль через сеть Интернет. Если не использовать HTTPS, то незащищенный пароль можно будет прочесть во время его пересылки по сети Интернет.

      Релизы LTS для Ubuntu обычно не имеют последних пакетов, для этого используется программа Certbot. Разработчики Certbot создали репозиторий специально для Ubuntu, также известный как PPA, где пользователи Ubuntu имеют возможность скачать Certbot и выполнить ее обновление до последней версии.

      Установите репозиторий Certbot с помощью команды:

      • sudo add-apt-repository ppa:certbot/certbot

      Установите утилиту certbot:

      • sudo apt install python-certbot-apache

      Используйте утилиту Certbot для получения сертификата TLS:

      • sudo certbot --apache -d your_domain

      Опция --apache использует плагин Apache, позволяющий Certbot автоматически считывать и настраивать Apache. your_domain определяет доменное имя для которого Certbot создаст сертификат.

      При выполнении команды certbot вам будет предложено ответить на несколько вопросов. От вас попросят ввести адрес электронной почты и согласиться с условиями обслуживания.

      Если программа certbot успешно установит, что домен контролируется вами, она попросит вас произвести настройку HTTPS:

      Output

      Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. ------------------------------------------------------------------------------- 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. ------------------------------------------------------------------------------- Select the appropriate number [1-2] then [enter] (press 'c' to cancel):
      • No redirect​​​: Apache будет обслуживать Ampache через HTTP и HTTPS.
      • Redirect: Apache автоматически перенаправит любые соединения через HTTP на HTTPS. Это будет означать, что доступ к вашему серверу Ampache будет возможен только через HTTPS. Опция обеспечивает большую защиту и не влияет на работу вашего экземпляра Ampache. Рекомендуется сделать этот выбор.

      Убедитесь, что автоматическое обновление сертификата было успешно выполнено с помощью команды:

      • sudo certbot renew --dry-run

      Опция --dry-run означает, что certbot проверит попытку обновления без внесения постоянных изменений в ваш сервер. Если проверка пройдет успешно, в результате будет содержаться следующая строка:

      Output

      Congratulations, all renewals succeeded. The following certs have been renewed: /etc/letsencrypt/live/your_domain/fullchain.pem (success)

      Apache и PHP готовы к обслуживанию вашего экземпляра Ampache. На следующем шаге вы создадите и настроите базу данных Ampache.

      Шаг 4 — Создание базы данных MySQL

      Ampache использует базу данных MySQL для хранения различной информации, например, плейлистов, пользовательских настроек и т. д. На этом шаге вы создадите базу данных и пользователя MySQL, который будет иметь доступ к ней.

      Для создания базы данных Ampache вам необходимо предоставить следующую информацию:

      1. ampache_database: имя базы данных Ampache.
      2. database_user: пользователь MySQL, который будет использоваться Ampache для доступа к базе данных. Этот пользователь отличается от пользователя системы и имеет доступ только к базе данных.
      3. database_password: пароль пользователя базы данных. Убедитесь, что выбрали надежный пароль.

      Запомните указанную информацию, она понадобится вам позднее.

      Откройте интерактивную оболочку MySQL с помощью команды mysql:

      • mysql --user=root --password

      --user=root открывает оболочку MySQL от имени root user, а --password запрашивает пароль пользователя.

      Создайте пустую базу данных с помощью команды:

      • CREATE DATABASE ampache_database;

      Создайте пользователя MySQL:

      • CREATE USER 'database_user'@'localhost' IDENTIFIED BY 'database_password';

      Предоставьте новому пользователю полный доступ к базе данных:

      • GRANT ALL PRIVILEGES ON ampache_database.* TO 'database_user'@'localhost';

      Проверьте, что новая база данных была создана с помощью команды:

      Результат будет выглядеть следующим образом:

      +--------------------+
      | Database           |
      +--------------------+
      | information_schema |
      | ampache_database  |
      | mysql              |
      | performance_schema |
      | sys                |
      +--------------------+
      5 rows in set (0.00 sec)
      

      Выполните выход из оболочки MySQL с помощью команды exit;.

      Проверьте базу данных, имя пользователя и пароль путем входа в оболочку MySQL с database_user.

      Введите следующую команду для входа в оболочку MySQL в качестве нового пользователя:

      • mysql --user=database_user --password ampache_database

      Вы создали базу данных для использования Ampache. Вы закончили настройку сервера и готовы завершить процесс установки с помощью веб-установщика.

      Шаг 5 — Использование веб-установщика

      На этом шаге вы используете веб-установщик Ampache для завершения процесса установки и предоставления Ampache необходимой информации для работы, например, имени администратора веб-интерфейса, информации по базе данных и других настроек.

      Введите https://your_domain​​​ в ваш браузер для начала веб-установки.

      Выберите язык установки

      Выберите язык интерфейса Ampache и нажмите кнопку Start Configuration, чтобы продолжить.

      Требования

      На этой странице Ampache выполнит проверку соответствия сервера необходимым требованиям. Каждая строка страницы выполняет определенную проверку, например, проверку того, что все модули PHP присутствуют и находятся в рабочем состоянии. После того, как рядом с каждой проверкой появится галочка зеленого цвета, это будет означать, что ваш сервер готов к работе с Ampache.

      Нажмите Continue для перехода на следующую страницу.

      Вставка базы данных Ampache

      Если база данных Ampache отсутствует, то на этой странице она будет создана и отформатирована. Заполните следующие поля:

      • Требуемое имя базы данных: ampache_database
      • Имя хоста MySQL: localhost
      • Порт MySQL (необязательно):<EMPTY>
      • Имя администратора MySQL: database_user
      • Пароль администратора MySQL: database_password
      • Создайте базу данных:<UNCHECKED>
      • Создайте таблицы (ampache.sql):<CHECKED>
      • Создайте пользователя базы данных:<UNCHECKED>

      Изображение заполненной формы

      Нажмите кнопку Insert Database для продолжения.

      Создание файла конфигурации

      На этой странице создается файл конфигурации для использования Ampache. Заполните поля следующим образом:

      • Сетевой путь:<EMPTY>

      • Имя базы данных: ampache_database

      • Имя хоста MySQL: localhost

      • Порт MySQL Port (необязательно):<EMPTY>

      • Имя пользователя MySQL: database_user

      • Пароль MySQL: database_password

      Изображение заполненной формы

      • Тип установки Оставьте значение по умолчанию.

      • Разрешить транскодинг Выберите ffmpeg из выпадающего списка.

      • Проигрыватели Оставьте значения по умолчанию.

      Нажмите кнопку Create Config для продолжения.

      Создайте учетную запись администратора

      На этой странице создается главный пользователь веб-интерфейса. Этот пользователь будет обладать всеми административными правами и привилегиями, вы используете его для входа и первой настройки Ampache.

      Выберите имя пользователя и надежный пароль, введите пароль в поля Password и Confirm Password.

      Нажмите кнопку Create Account​​​ для продолжения.

      Обновление Ampache

      На этой странице можно внести любые необходимые административные изменения в базу данных Ampache. Изменения вносятся во время последующего обновления программы, так как установка была выполнена в первый раз, никаких изменений не будет.

      Нажмите кнопку Update Now!​​​ для продолжения.

      Обновление Ampache

      На этой странице отображаются и разъясняются все изменения, произведенные установщиком на предыдущем шаге. Для вас эта страница будет пустой.

      Пройдите по ссылке [Return to main page] для перехода на страницу входа в систему. Введите имя пользователя и пароль, которые были определены для входа на сервер Ampache.

      Для начала использования Ampache необходимо выполнить еще одну небольшую настройку. Настройка будет заключаться в добавлении музыки для вашего нового сервера Ampache.

      Шаг 6 — Добавление вашей музыки в Ampache

      Для начала использования сервера необходимо добавить музыкальные файлы. На этом шаге вы настроите каталог для музыки и загрузите в него несколько музыкальных файлов. “Каталог” – это имя, которое Ampache присваивает коллекции музыки. Ampache может загружать музыку как с сервера, так и из внешних источников, здесь вы загрузите и сохраните музыкальные файлы с сервера в локальный каталог Ampache.

      Пройдите по ссылке add a Catalog в следующей сроке на первой странице, которую вы увидите после входа в Ampache:

      Настройка Catalog еще не выполнена. Для начала потокового воспроизведения ваших медиа-файлов вам потребуется добавить Catalog.

      Для этого нужно перейти на страницу Add Catalog​​​. Заполните поля следующим образом:

      • Имя каталога“: присвойте каталогу короткое, запоминающееся имя.
      • Тип каталога: local
      • Шаблон имени файла:<EMPTY>
      • Шаблон папки: оставьте значение по умолчанию.
      • Gather Art:<CHECKED>
      • Создавать плейлисты из файлов плейлистов (m3u, m3u8, asx, pls, xspf):<UNCHECKED>
      • Путь: /data/Music

      Изображение завершенной формы добавления каталога

      Нажмите кнопку Add Catalog для завершения действий на этой странице.

      Нажмите кнопку Continue на следующей странице. На экране появится страница Show Catalogs​​​, где будет отображаться информация по созданному каталогу. Настройки каталога можно изменять в любое время.

      Включите утилиту веб-загрузки Ampache, нажав на третью навигационную иконку для доступа к расширенным настройкам:

      Изображение третьей иконки настроек

      Прокрутите вниз до раздела Server Config и пройдите по ссылке System для того, чтобы открыть страницу с системными настройками.

      Найдите строку Allow user uploads​​​​​ и выберите Enable из выпадающего меню в столбце Value.

      Вы также можете выбрать уровень пользователя для загрузки музыкальных файлов. Уровень по умолчанию Catalog Manager​​​, он позволяет всем пользователям уровня Catalog Manager и выше загружать музыку. В нашем случае это администратор.

      Также необходимо установить каталог для добавления музыкальных файлов. Определите его в строке Destination catalog. Выберите созданный каталог из выпадающего списка Value.

      Изображение строк разрешения на загрузку и каталога назначения

      Нажмите кнопку Update Preferences для завершения настройки конфигурации. Вы можете загрузить музыкальные файлы.

      Нажмите на первую иконку настроек:

      Изображение иконки первых настроек

      Пройдите по ссылке Upload в разделе Music.

      Изображение ссылки на загрузку

      Нажмите Browse на странице Upload, найдите музыкальные файлы на вашем компьютере и загрузите их.

      Если вы оставите ярлыки Artist и Album пустыми, Ampache будет автоматически считывать ID3 теги музыкальных файлов, чтобы определить исполнителя и название альбома. После загрузки музыкальных файлов их можно будет найти с помощью ссылок Songs, Albums или Artists в разделе Music на навигационной панели слева.

      Ваш музыкальный сервер Ampache готов к потоковому воспроизведению музыки.

      Заключение

      В этой статье вы научились устанавливать и настраивать сервер потоковой трансляции музыки Ampache и загружать музыкальные файлы. Вы можете начать прослушивание музыки в любом месте, где бы вы не были, на любом из ваших устройств. Дополнительная информация по использованию и расширенным возможностям вашего сервера потоковой трансляции музыки находится в Документации Ampache. Эти приложения Android и эти приложения iOS можно использовать для потоковой трансляции музыки на ваш телефон. Ampache организует вашу музыку на сервере с помощью ID3 тегов в музыкальных файлах. Программа MusicMrainz поможет вам управлять ID3 тегами ваших музыкальных файлов.



      Source link

      Cómo instalar el servidor Ampache de transmisión de música en Ubuntu 18.04


      El autor seleccionó a Open Internet/Free Speech Fund para recibir una donación como parte del programa Write for DOnations.

      Introducción

      Ampache es un servidor de transmisión de música de código abierto que le permite alojar y administrar su colección de música digital en su propio servidor. Ampache puede transmitir su música a su computadora, smartphone, tableta o TV inteligente. Esto quiere decir que no tiene que guardar varias copias de su música en el dispositivo que desee usar para escucharla. Con Ampache, puede administrar su colección en su servidor usando la interfaz web de Ampache y escucharla en cualquier lugar.

      A lo largo de este tutorial, instalará y configurará el servidor web Apache y PHP que presentarán su instancia de Ampache. A continuación, creará una base de datos MySQL que Ampache usará para almacenar toda su información operativa. Por último, debe cargar su colección de música para poder comenzar a transmitirla.

      Requisitos previos

      Para completar esta guía, necesitará lo siguiente:

      Paso 1: Instalar Ampache

      En este paso, decargará el archivo ZIP de Ampache en su servidor, lo descomprimirá en su directorio de inicio de instalación y realizará algunos cambios necesarios en el sistema de archivos.

      Primero, inicie sesión en su servidor como non-root user. A continuación, cree el directorio principal de Ampache con el siguiente comando:

      • sudo mkdir /var/www/ampache

      Luego, instale la utilidad zip que necesita para descomprimir el archivo de Ampache:

      A continuación, descargue el archivo ZIP de la última versión. Puede encontrar la última versión en la página de GitHub de Ampache. En estos ejemplos, se utiliza la versión 4.1.1:

      • wget https://github.com/ampache/ampache/releases/download/4.1.1/ampache-4.1.1_all.zip

      A continuación, descomprima el archivo ZIP en el directorio /var/www/ampache/ usando la opción -d:

      • sudo unzip ampache-4.1.1_all.zip -d /var/www/ampache/

      A continuación, establezca el usuario y la identidad de grupo de los archivos de Ampache para que Apache pueda leer, escribir y ejecutar los archivos de la instancia de Ampache:

      • sudo chown --recursive www-data:www-data /var/www/ampache/

      La opción --recursive hace que chown cambie la propiedad y la identidad de grupo de todos los archivos y del subdirectorio en /var/www/ampache/ al usuario y el grupo de Apache www-data.

      A continuación, cambie el nombre de los archivos .htaccess incluidos en el archivo ZIP. Los archivos .htaccess contienen información de seguridad y funcionamiento para Apache, pero solo funcionarán con el nombre de extensión de archivo .htaccess. Cambie el nombre de los archivos suministrados .htaccess.dist a .htaccess con los siguientes comandos:

      • sudo mv /var/www/ampache/rest/.htaccess.dist /var/www/ampache/rest/.htaccess
      • sudo mv /var/www/ampache/play/.htaccess.dist /var/www/ampache/play/.htaccess
      • sudo mv /var/www/ampache/channel/.htaccess.dist /var/www/ampache/channel/.htaccess

      Ahora, creará el directorio que contendrá sus archivos de música. Por motivos de seguridad, conviene más crear este directorio fuera del directorio de instalación de Ampache. De esta manera, las solicitudes web maliciosas no podrán realizar en él operaciones de lectura ni cambios debido a que se encuentra fuera del DocumentRoot de Ampache.

      Cree el directorio /data/Music con el siguiente comando:

      • sudo mkdir -p /data/Music

      A continuación, cambie su propiedad y su identidad de grupo para que Apache pueda realizar tareas de lectura y escritura en él:

      • sudo chown www-data:www-data /data/Music

      Para finalizar la configuración, instalará FFmpeg: una utilidad que convierte el audio y el video de un formato a otro. Por ejemplo, puede usarlo para convertir un archivo de música MP3 alk formato OPUS. Ampache utiliza FFmpeg para realizar, sobre la marcha, una conversión del formato en el que se cargó a uno que pueda reproducir el dispositivo desde el que se escucha. Este es un proceso conocido como conversión de código.

      Resulta útil porque no todos los dispositivos pueden reproducir todos los formatos de música. Ampache puede detectar los formatos que son compatibles con el dispositivo de reproducción y ofrecer su música automáticamente en el formato compatible.

      Instale FFmpeg con el siguiente comando:

      De esta manera, descomprimió y preparó su instancia de Ampache para el instalador web e instaló la utilidad FFmpeg. A continuación, configure Apache y PHP para presentar su instancia de Ampache.

      Paso 2: Configurar Apache y PHP

      En esta sección, configurará Apache creando un nuevo archivo VirtualHost, que proporcionará la configuración que Apache necesita para presentar su dominio del servidor Ampache. También instalará algunos módulos PHP adicionales que amplían las capacidades de PHP para cumplir los requisitos de Ampache.

      Primero, instale algunos módulos PHP adicionales que no se incluyeron con la instalación predeterminada de PHP:

      • sudo apt install php-mysql php-curl php-json php-gd php7.2-xml

      Estos módulos proporcionan la siguiente funcionalidad adicional:

      • php-mysql: permite que PHP se comunique con una base de datos MySQL.
      • php-curl: permite que PHP use la utilidad curl para descargar archivos, como las portadas de álbumes, desde servidores remotos.
      • php-json: permite que PHP lea y manipule archivos de texto en formato JSON.
      • php-gd: permite que PHP manipule y cree archivos de imagen.
      • php7.2-xml: permite que PHP lea y manipule archivos de texto en formato XML.

      A continuación, habilite un par de módulos de Apache usando la utilidad a2enmod:

      • sudo a2enmod rewrite expires

      Estos módulos de Apache le permiten hacer lo siguiente:

      • rewrite: modificar o volver a escribir URL conforme a las reglas provistas por Ampache.
      • expires: establece la caducidad de la caché para objetos como imágenes a fin de que los navegadores los almacenen de forma más eficiente.

      Ahora, creará el archivo VirtualHost que indicará a Apache cómo y dónde cargar la instancia de Ampache.

      Nota: Si creó un archivo de prueba VirtualHost que utiliza su nombre de dominio de Ampache cuando siguió la guía “Cómo instalar la pila Linux, Apache, MySQL y PHP (LAMP) en Ubuntu 18.04”, debe deshabilitarlo. Para hacerlo, use la utilidad a2disite.

      • sudo a2dissite test_virtalhost_file

      Ahora, cree y abra el archivo VirtualHost con su editor de texto en /etc/apache2/sites-available/ampache.conf:

      • sudo nano /etc/apache2/sites-available/ampache.conf

      Añada la siguiente plantilla VirtualHost a su archivo:

      /etc/apache2/sites-available/ampache.conf

      <VirtualHost *:80>
      
          ServerName your_domain
          DocumentRoot /var/www/ampache
      
          <Directory /var/www/ampache/>
              AllowOverride All
              Require all granted
          </Directory>
      
          RewriteEngine on
          CustomLog /var/log/apache2/ampache.access.log common
          ErrorLog  /var/log/apache2/ampache.error.log
      
      </VirtualHost>
      

      Debe cambiar your_domain por el nombre de dominio que redirigió a su servidor. Cuando termine de editar este archivo, guarde y cierre el editor.

      Las directivas de este archivo VirtualHost son las siguientes:

      • ServerName: nombre de dominio que Apache usará para presentar su instancia de Ampache.
      • DocumentRoot: ubicación del sistema de archivos en su servidor donde se encuentra la instancia de Ampache. Es la misma ubicación en la que descomprimió el archivo ZIP en el paso 1.
      • Directory: esta sección transmite a Apache configuración que se aplica a los archivos y directorios que contiene la ruta.
      • RewriteEngine: habilita el módulo de reescritura de Apache.
      • CustomLog: crea un archivo de registro que Apache usará para asentar todos los registros de acceso de su servidor Ampache.
      • ErrorLog: crea un archivo de registro que Apache usará para asentar todos los registros de error generados por su servidor Ampache.

      A continuación, compruebe que en el archivo VirtualHost que creó no halla errores con la utilidad apachectl:

      • sudo apachectl configtest

      Si su configuración no contiene errores, verá el siguiente resultado después del comando:

      Output

      Syntax OK

      Si su configuración contiene errores, en el resultado se imprimirán el nombre del archivo y el número de línea en los que se encontró el error.

      Nota: Si ve el error

      AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
      

      deberá editar el archivo de configuración principal de Apache en /etc/apache2/apache2.conf y añadir la siguiente línea:

      ServerName your_domain
      

      A continuación, habilite la nueva configuración de VirtualHost usando la utilidad a2ensite:

      La configuración final es opcional, pero se recomienda. La configuración predeterminada para las cargas de archivos en PHP no admite más de 2 MB. Los archivos de música suelen ser más grandes. Por ello, si aumenta este tamaño podrá usar la interfaz de Ampache para cargar archivos más grandes en su colección de música.

      Abra /etc/php/7.2/apache2/php.ini con el siguiente comando:

      • sudo nano /etc/php/7.2/apache2/php.ini

      Y cambie estas líneas

      /etc/php/7.2/apache2/php.ini

      . . .
      upload_max_filesize = 2M
      . . .
      post_max_size = 8M
      . . .
      

      por lo siguiente:

      /etc/php/7.2/apache2/php.ini

      . . .
      upload_max_filesize = 100M
      . . .
      post_max_size = 110M
      . . .
      

      Ahora podrá cargar archivos de música de hasta 100 MB. Utilice un valor más grande si desea cargar archivos de tamaño superior a este. Guarde el archivo y ciérrelo.

      Por último, vuelva a cargar su configuración actualizada de Apache:

      • sudo systemctl reload apache2.service

      Con esto, habrá configurado Apache para presentar Ampache en HTTP. A continuación, obtendrá un certificado TLS y configurará Apache a fin de usarlo para acceder de forma segura a Ampache en HTTPS.

      Paso 3: Habilitar HTTPS

      En este paso, obtendrá un certificado gratuito TLS de Let’s Encrypt usando la utilidad Certbot, permite navegar en HTTPS. Certbot creará el certificado, generará automáticamente la configuración necesaria de Apache y gestionará la renovación automática del certificado.

      Es importante, porque cada vez que inicie sesión en Ampache enviará su nombre de usuario y contraseña por Internet. Si no utiliza HTTPS, la contraseña se enviará en texto simple que se podrá leer cuando viaje a través de Internet.

      En las versiones LTS de Ubuntu no se suelen incluir los paquetes más recientes y lo mismo pasa con el programa Certbot. Los desarrolladores de Certbot mantienen un repositorio específico de Ubuntu, conocido como PPA, para que los usuarios de Ubuntu puedan contar con una copia actualizada de Certbot.

      Instale el repositorio de Certbot con el siguiente comando:

      • sudo add-apt-repository ppa:certbot/certbot

      Ahora, instale la utilidad certbot:

      • sudo apt install python-certbot-apache

      A continuación, utilice certbot para obtener el certificado TLS:

      • sudo certbot --apache -d your_domain

      La opción --apache usa el complemento de Apache que permite a Certbot leer y configurar Apache automáticamente. -d your_domain​​​ especifica el nombre de dominio para el cual quiere que Certbot cree el certificado.

      Cuando ejecute el comando certbot, se le le harán unas preguntas. Se le solicitará ingresar una dirección de correo electrónico y aceptar los términos de servicio.

      Si certbot confirma correctamente que controla su dominio, le solicitará configurar sus ajustes de HTTPS:

      Output

      Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. ------------------------------------------------------------------------------- 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. ------------------------------------------------------------------------------- Select the appropriate number [1-2] then [enter] (press 'c' to cancel):
      • No redirect: Apache presentará Ampache a través de HTTP y HTTPS.
      • Redirect: Apache redirigirá cualquier conexión HTTP a HTTPS automáticamente. Esto significa que su servidor Ampache solo estará disponible a través de HTTPS. Esta opción es más segura y no afectará al comportamiento de su instancia de Ampache. Es la opción recomendada.

      Por último, verifique que realice correctamente la renovación automática del certificado ejecutando el siguiente comando:

      • sudo certbot renew --dry-run

      La opción --dry-run implica que certbot probará un intento de renovación sin realizar cambios permanentes en su servidor. Si la prueba se realiza correctamente, el resultado incluirá la siguiente línea:

      Output

      Congratulations, all renewals succeeded. The following certs have been renewed: /etc/letsencrypt/live/your_domain/fullchain.pem (success)

      Ahora, Apache y PHP estarán listos para presentar su instancia de Ampache. En el siguiente paso, creará y configurará la base de datos de Ampache.

      Paso 4: Crear una base de datos MyQSL

      Ampache utiliza una base de datos MySQL para almacenar información; por ejemplo, listas de reproducción y preferencias de usuarios, entre otros datos. En este paso, creará un usuario de base de datos y de MySQL que Ampache usará para acceder.

      Deberá elegir tres informaciones para completar las siguientes instrucciones y crear la base de datos de Ampache:

      1. ampache_database: nombre de la base de datos de Ampache.
      2. database_user: usuario de MySQL que Ampache empleará para acceder a la base de datos. No es un usuario de un sistema y solo puede acceder a la base de datos.
      3. database_password: contraseña del usuario de la base de datos. Asegúrese de elegir una contraseña segura.

      Anote estos datos; los necesitará más tarde.

      Primero, abra el shell interactivo de MySQL con el comando mysql:

      • mysql --user=root --password

      --user=root abre el shell de MySQL como el usuario root y --password solicita ingresar la contraseña del usuario root.

      Con el siguiente comando se creará una base de datos vacía:

      • CREATE DATABASE ampache_database;

      A continuación, cree el usuario MySQL:

      • CREATE USER 'database_user'@'localhost' IDENTIFIED BY 'database_password';

      Ahora, dé al nuevo usuario acceso completo a la base de datos:

      • GRANT ALL PRIVILEGES ON ampache_database.* TO 'database_user'@'localhost';

      Por último, compruebe que exista una nueva base de datos ejecutando el siguiente comando:

      Verá lo siguiente:

      +--------------------+
      | Database           |
      +--------------------+
      | information_schema |
      | ampache_database  |
      | mysql              |
      | performance_schema |
      | sys                |
      +--------------------+
      5 rows in set (0.00 sec)
      

      Cierre el shell de MySQL ingresando exit;.

      Por último, pruebe la base de datos, el nombre de usuario y la contraseña intentando iniciar sesión en el shell de MySQL con database_user.

      Ingrese el siguiente comando para iniciar sesión con el shell de MySQL como el nuevo usuario:

      • mysql --user=database_user --password ampache_database

      Con esto, habrá creado la base de datos que Ampache usará. De esta manera, finalizó la configuración de su servidor y está listo para completar la instalación con el instalador web.

      Paso 5: Usar el instalador web

      En este paso, usará el instalador web de Ampache a fin de completar la instalación proporcionando a Ampache la información que necesita para ejecutarse, como un usuario administrador de la interfaz web, detalles de la base de datos y otros ajustes.

      Inicie la instalación web ingresando https://your_domain en su navegador.

      Elija el idioma de la instalación

      Seleccione el idioma de la interfaz de Ampache y haga clic en el botón Start Configuration para continuar.

      Requisitos

      Esta es la página en la que Ampache comprueba que el servidor cumpla los requisitos. Cada línea de esta página representa una prueba que el instalador realiza para asegurarse de que, por ejemplo, todos los módulos PHP requeridos estén presentes y funcionando. Verá que cada prueba tiene una marca de verificación verde que indicará que su servidor está listo para Ampache.

      Haga clic en el botón Continue para pasar a la siguiente página.

      Introduzca la base de datos de Ampache

      En esta página se crea la base de datos de Ampache si no existe y le da formato. Complete los campos como se muestra a continuación:

      • Desired Database Name: ampache_database
      • MySQL Hostname: localhost
      • MySQL Port (optional):<EMPTY>
      • MySQL Administrative Username: database_user
      • MySQL Administrative Password: database_password
      • Cree una base de datos:<UNCHECKED>
      • Create Tables (ampache.sql):<CHECKED>
      • Create Database User:<UNCHECKED>

      Imagen del formulario completado

      Haga clic en el botón Insert database para continuar.

      Genere el archivo de configuración

      En esta página se crea el archivo de configuración que Ampache usará para ejecutarse. Complete los campos como se indica a continuación:

      • Web Path:<EMPTY>

      • Database Name: ampache_database

      • MySQL Hostname: localhost

      • MySQL Port (optional):<EMPTY>

      • MySQL Username: database_user

      • MySQL Password: database_password

      Imagen del formulario completado

      • Installation Type​​​ Deje el ajuste predeterminado.

      • Allow Transcoding​​​1​​​ Seleccione ffmpeg de la lista desplegable.

      • Players Deje el ajuste predeterminado.

      Haga clic en el botón Create Config para continuar.

      Cree una cuenta de administrador

      En esta página se crea el primer usuario de la interfaz web. Este usuario se crea con privilegios administrativos completos y es el que usará para iniciar sesión y configurar Ampache por primera vez.

      Seleccione un nombre de usuario y una contraseña segura e ingréselos en los campos Password y Confirm Password.

      Haga clic en el botón Create Account para continuar.

      Actualización de Ampache

      Esta página realizará los cambios administrativos necesarios en la base de datos de Ampache. Estos cambios se realizan durante las actualizaciones de versiones. Sin embargo, dado que esta es una nueva instalación, el instalador no realizará cambios.

      Haga clic en el botón Update Now! para continuar.

      Actualización de Ampache

      Esta página imprime y explica cualquier actualización que el instalador realizó en el paso anterior. No debería ver actualizaciones enumeradas.

      Haga clic en el enlace [Return to main page] para continuar accediendo a la página de inicio de sesión. Ingrese el nombre de usuario y la contraseña que configuró para iniciar sesión en su servidor Ampache.

      Apache no está completamente configurado ni listo para usarse. Ahora completará la configuración añadiendo su música para poder comenzar a usar el nuevo servidor Ampache.

      Paso 6: Agregar su música a Ampache

      Un servidor de música no tiene sentido si no hay música para reproducir. En este paso, configurará un catálogo de música y cargará un poco. “Catalog” es el nombre que Ampache da a una colección de música. Apache puede leer música de muchas fuentes, tanto conectado como desconectado del servidor, pero en este tutorial cargará y almacenará su música en el servidor en un catálogo local al que Ampache hace referencia.

      Primero, haga clic en el enlace add a Catalog en la siguiente línea de la primera página que verá cuando inicie sesión en Ampache:

      No hay catálogos configurados aún. Para comenzar a transmitir sus archivos multimedia, ahora debe añadir un Catálogo.

      Esto lo llevará a la página Add Catalog. Complete los campos como se indica a continuación:

      • Catalog Name: Give this catalog a short, memorable name.
      • Catalog Type: local
      • Filename Pattern:<EMPTY>
      • Folder Pattern: deje la configuración predeterminada.
      • Gather Art:<CHECKED>
      • Build Playlists from Playlist Files. (m3u, m3u8, asx, pls, xspf):<UNCHECKED>
      • Path: /data/Music

      Imagen del formulario Add Catalog completo

      Haga clic en el botón Add Catalog para completar esta página.

      En la página que sigue, haga clic en el botón Continue. Con esto, accederá a la página Show Catalogs que imprimirá los detalles del catálogo que creó. Luego de esto, podrá cambiar las configuraciones del catálogo en cualquier momento.

      Ahora, habilite la utilidad de carga web de Ampache haciendo clic en el tercer ícono de navegación para abrir los ajustes ampliados:

      Imagen del tercer ícono de configuración

      Desplácese hacia la sección Server Config y haga clic en el enlace System para abrir la página de configuración del sistema.

      Busque la línea Allow user uploads y seleccione Enable del menú desplegable en la columna Value.

      También puede elegir el nivel de usuario que puede cargar archivos de música. El nivel predeterminado es Catalog Manager, que permite que el Catalog Manager y todos los usuarios con privilegios mayores carguen música. En este caso, es el administrador.

      También debe establecer el catálogo en el que se añadirá la música. Hágalo usando la línea Destination catalog. Seleccione el catálogo que creó en el elemento desplegable Value.

      Imagen que muestra las líneas de autorización de cargas y de catálogo de destino

      Haga clic en el botón Update Preferences en la parte inferior de la página para completar la configuración. Ahora, estará listo para cargar música.

      Primero, haga clic en el primer ícono de configuración:

      Imagen del primer ícono de configuración

      A continuación, haga clic en el enlace Upload de la sección Music.

      Imagen del enlace de carga

      En la página Upload, haga clic en el botón Browse, localice sus archivos de música en su computadora y cárguelos.

      Si deja las etiquetas Artist y Album en blanco, Ampache leerá las etiquetas ID3 de los archivos de música para hallar el artista y el álbum de forma automática. Tras cargar música, ahora podrá encontrarla haciendo clic en los enlaces Songs, Albums o Artists de la sección Music, en el panel de navegación de la izquierda.

      Ahora su servidor de música Ampache está listo para comenzar a transmitir su música.

      Conclusión

      A lo largo de este artículo, instaló y configuró un servidor Ampache de transmisión de música y subió parte de su música. Ahora ya puede escuchar su música desde cualquier lugar y en cualquiera de sus dispositivos. A través de la documentación de Ampache, podrá a usar y ampliar su servidor de transmisión. Estas apps de Android y esta app de iOS transmitirán su música a su teléfono. Ampache organiza su música en el servidor usando las etiquetas ID3 de los archivos de música. El programa MusicMrainz le ayudará a gestionar las etiquetas ID3 de sus archivos de música.



      Source link