Wie man

So richten Sie einen persönlichen Musik-Streaming-Server unter Linux ein

So richten Sie einen persönlichen Musik-Streaming-Server unter Linux ein

Wie kann ich einen persönlichen Musik-Streaming-Server unter Ubuntu / Debian / CentOS / Fedora mit Koel . einrichten??. Koel ist ein Open Source, einfacher webbasierter persönlicher Audio-Streaming-Dienst, der in Vue und Laravel PHP Framework geschrieben wurde. Dieser Streaming-Server richtet sich an Webentwickler und umfasst moderne Webtechnologien wie CSS-Grid, Audio und Drag-and-Drop-API e.t.c.

Dies sind die beiden Komponenten des Koel Media-Streaming-Dienstes.

Serverseite

Kundenanforderungen

In den nächsten Abschnitten wird erläutert, wie Sie die von Koel Music Streaming Server benötigten Abhängigkeiten installieren und konfigurieren können.

Schritt 1: Datenbankserver installieren

Wir konzentrieren uns auf die Verwendung des MariaDB-Datenbankservers. Dies sind die Referenzanleitungen für die Installation.

MariaDB-Installationsanleitungen:

Installieren Sie den MariaDB-Datenbankserver unter Ubuntu

Installieren Sie den MariaDB-Datenbankserver unter Debian

Installieren Sie den MariaDB-Datenbankserver auf CentOS 8 / CentOS 7

Sobald der Datenbankdienst ausgeführt wird, erstellen Sie die Datenbank, einen Benutzer für den Dienst und erteilen dann Berechtigungen für diesen Benutzer.

$ mysql -u root -p CREATE DATABASE koel DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; BENUTZER ERSTELLEN 'koel'@'localhost' IDENTIFIZIERT DURCH '[email protected]'; GEWÄHLE ALLE PRIVILEGIEN AUF koel.* ZU 'koel'@'localhost' MIT GRANT OPTION; AUSFAHRT;

Schritt 1: PHP und Composer installieren

In diesem Schritt installieren wir PHP, Composer und Nginx httpd server.

Debian/Ubuntu:

sudo apt -y installiere git curl g++ nginx sudo apt -y installiere php php-cli php-fpm php-json php-pdo php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php- bcmath

CentOS 7:

sudo yum -y installiere http://rpms.remirepo.net/enterprise/remi-release-7.rpm sudo yum -y install git wget curl epel-release yum-utils libpng-devel sudo yum-config-manager --disable remi-php54 sudo yum-config-manager --enable remi-php73 sudo yum -y install php php- cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json

CentOS 8:

sudo dnf -y install git wget curl yum-utils sudo dnf -y install https://dl.fedoraprojekt.org/pub/epel/epel-release-latest-8.noarch.rpm sudo dnf -y install https://rpms.remirepo.net/enterprise/remi-release-8.rpm dnf-modul php zurücksetzen sudo dnf-modul installieren php: remi-7.3 sudo yum -y install wget php php-pear,cgi,common,curl,mbstring,gd,mysqlnd,gettext,bcmath,json,xml,fpm,intl,zip,imap

Schritt 3: Knoten installieren.js

Nodejs installieren:

--- CentOS --- sudo curl -sL https://rpm.Knotenquelle.com/setup_10.x | sudo bash - sudo yum -y install nodejs --- Ubuntu / Debian --- sudo curl -sL https://deb.Knotenquelle.com/setup_10.x | sudo bash - sudo apt update sudo apt -y install nodejs

Garn installieren:

--- CentOS --- curl -sL https://dl.Garnpkg.com/rpm/garn.Repository | sudo tee /etc/yum.repos.d/garn.repo sudo yum -y installiergarn --- Ubuntu / Debian --- curl -sL https://dl.Garnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.Garnpkg.com/debian/stable main" | sudo tee /etc/apt/sources.aufführen.d/garn.list sudo apt-get update && sudo apt-get installgarn

Composer installieren:

sudo su - curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer exit

Überprüfen Sie die Installation, indem Sie die Version abfragen.

$ Komponist --version Komponistenversion 1.9.3 2020-02-04 12:58:49

Schritt 4: Koel Music Streaming-Server installieren

Build-Abhängigkeiten installieren:

--- Ubuntu / Debian $ sudo apt install -y build-essential libpng-dev gcc make ffmpeg --- CentOS --- $ sudo yum -y install epel-release $ sudo yum group install "Entwicklungstools" $ sudo yum -y install libpng -entwickeln

Überprüfen Sie für die ffmpeg-Installation auf CentOS:

FFmpeg-Installation unter CentOS Linux

Koel-Projektcodeformular klonen Github.

git-Klon https://github.com/phanan/koel.git cd koel npm install npm audit fix Composer installieren 

Beispielinstallationsausgabe:

… nunomaduro/larastan schlägt vor, Orchester/Testbench zu installieren (^3.6) php-mock/php-mock schlägt vor, php-mock/php-mock-phpunit zu installieren (ermöglicht die Integration in den PHPUnit-Testfall mit dem Merkmal PHPMock.) sebastian/global-state schlägt vor, ext-uopz zu installieren (*) phpunit/php-code-coverage schlägt vor, ext-xdebug zu installieren (^2.6.0) phpunit/phpunit schlägt vor, ext-soap zu installieren (*) phpunit/phpunit schlägt vor, ext-xdebug zu installieren (*) phpunit/phpunit schlägt vor, phpunit/php-invoker zu installieren (^2.0) Paket facebook/webdriver wurde aufgegeben, Sie sollten es vermeiden avoid. Verwenden Sie stattdessen php-webdriver/webdriver. Generieren von optimierten Autoload-Dateien Carbon 1 ist veraltet, siehe Migration zu Carbon 2. https://kohlenstoff.nesbot.com/docs/#api-carbon-2 Sie können './vendor/bin/upgrade-carbon', um Hilfe bei der Aktualisierung von Carbon und anderen Frameworks und Bibliotheken zu erhalten, die davon abhängig sind. > Illuminate\Foundation\ComposerScripts::postAutoloadDump > @php artisan package:discover Entdecktes Paket: aws/aws-sdk-php-laravel Entdecktes Paket: barryvdh/laravel-ide-helper Entdecktes Paket: fideloper/proxy Entdecktes Paket: laravel/tinker Entdecktes Paket: mpociot/laravel-apidoc-generator Entdecktes Paket: nesbot/carbon Entdecktes Paket: nunomaduro/larastan Paketmanifest erfolgreich generiert. ocramius/package-versions: Generieren der Versionsklasse… ocramius/package-versions:… fertig Generieren der Versionsklasse > @php artisan clear-compiled Kompilierte Dienste und Paketdateien entfernt! > @php artisan cache:clear Cache konnte nicht gelöscht werden. Stellen Sie sicher, dass Sie über die entsprechenden Berechtigungen verfügen. > @php -r "if (!Datei existiert('.env')) kopieren('.env.Beispiel', '.env');"

Bearbeiten Sie die .env Datei mit den erforderlichen Konfigurationsänderungen - Datenbankanmeldeinformationen festlegen

$ vim .envvim .env… # Datenbankverbindungsname, der dem Datenbanktreiber entspricht. DB_CONNECTION=mysql DB_DATABASE=koel DB_USERNAME=koel DB_PASSWORD='[E-Mail geschützt]' # Anmeldeinformationen und andere Informationen, die verwendet werden sollen, wenn Koel im nicht interaktiven Modus installiert wird # (php artisan koel:init --no-interaction) # Standardmäßig (interaktiver Modus) fordert Koel diese Informationen während der Installation immer noch # aber geben Sie die Werte hier als Standardwerte an (außer ADMIN_PASSWORD, aus Sicherheitsgründen). ADMIN_NAME="Koel-Admin" ADMIN_EMAIL=[E-Mail geschützt] ADMIN_PASSWORD=Str0ngPassw0rd # Das Speicherlimit in MB, das vom Scanvorgang verwendet wird. # Wenn Sie beispielsweise ein Speicherlimit von 2048 MB festlegen möchten, geben Sie hier "2048" (ohne # Anführungszeichen) ein. MEMORY_LIMIT=512 Der vollständige Pfad der ffmpeg-Binärdatei. FFMPEG_PATH=/usr/bin/ffmpeg

Initialisieren Sie dann die Datenbank und beginnen Sie dann mit der Bereitstellung der Site.

$ php artisan koel:init --no-interaction $ php artisan serve Laravel-Entwicklungsserver gestartet: 

Dies erlaubt nur Verbindungen vom localhost. Wenn Sie Verbindungen von anderen Hosts akzeptieren möchten, starten Sie den Server, indem Sie die Option 'host' angeben.

$ php Handwerker dienen --host 0.0.0.0

Schritt 5: Konfigurieren Sie Nginx

Für eine optimale Leistung sollten Sie die Produktionsversion mit dem Apache- oder Nginx-Webserver einrichten. Installieren Sie nginx mit den Befehlen:

--- Debian / Ubuntu --- $ sudo apt -y install nginx php-fpm $ sudo systemctl enable --now nginx --- CentOS / Debian --- $ sudo yum -y install nginx $ sudo systemctl enable --now nginx $ sudo Firewall-cmd --add-service=http,https --permanent $ sudo Firewall-cmd --reload

Verschieben Sie Ihren Koel-Projektordner nach /var/www/html Verzeichnis.

sudo mv koel /var/www/html

Berechtigungen festlegen:

--- Debian / Ubuntu --- $ sudo chown -R www-data:www-data /var/www/html/koel --- CentOS --- $ sudo chown -R apache:apache /var/www/html/koel

Nginx konfigurieren

$ sudo vim /etc/nginx/conf.d/koel.conf

Unten einfügen und ändern.

server  hören *:80; server_name koel.Beispiel.com; root /var/www/html/koel; Indexindex.php; gzip an; gzip_types Text/Nur-Text/css-Anwendung/x-Javascript-Text/xml-Anwendung/xml-Anwendung/xml+rss-Text/Javascript-Anwendung/json; gzip_comp_level 9; # Nur Whitelist-Index.php, Roboter.txt und einige spezielle Routen if ($request_uri !~ ^/$|index\.php|Roboter\.txt|(öffentlich|api)/|remote|api-docs|sw\.js)  zurück 404;  Standort /media/  intern; Alias ​​$upstream_http_x_media_root; access_log /var/log/nginx/koel.Zugriff.Log; error_log /var/log/nginx/koel.Error.Log;  Speicherort /  try_files $uri $uri/ /index.php?$args;  Standort ~ \.php$  try_files $uri $uri/ /index.php?$args; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; #fastcgi_pass 127.0.0.1:9000; fastcgi_pass unix:/run/php/php7.2-fpm.Socke; fastcgi_index-Index.php; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_intercept_errors an; schließen fastcgi_params ein;  

Überprüfen Sie die nginx-Konfiguration auf Syntaxfehler:

$ sudo nginx -t nginx: die Konfigurationsdatei /etc/nginx/nginx.conf-Syntax ist in Ordnung nginx: Konfigurationsdatei /etc/nginx/nginx.conf-Test ist erfolgreich 

nginx neu starten:

sudo systemctl Neustart nginx

Greifen Sie auf das Koel-Dashboard zu: koel.Beispiel.com - Domäne konfiguriert.

Weitere Anleitungen:

So erstellen Sie harte Links und weiche (symbolische) Links in Linux

Die Linux-Dateisystemhierarchie verstehen

Installieren Sie den neuesten Google Chrome-Browser unter Kali Linux

Sway Tiling Window Manager auf Fedora mit Waybar einrichten

Einrichten der privaten Docker-Registrierung unter Ubuntu 20.18.04.04/16.04 mit Let's Encrypt
Wenn Sie Docker-Mikrodienste in Ihrer Infrastruktur ausführen, sind Sie möglicherweise daran interessiert, eine interne private Docker-Registrierung z...
Installieren Sie Docker CE auf Fedora 34/33/32/31/30
Willkommen zu unserem Leitfaden zur Installation von Docker CE auf der Linux-Distribution Fedora 34/33/32/31/30. Die von uns installierte Version von ...
So installieren Sie Docker Compose unter Linux
Wie installiere ich Docker Compose unter Ubuntu 20.18.04.04 / Debian 10 / CentOS 8 / Fedora 33/32/31?. Diese Anleitung zeigt Ihnen, wie Sie das neuest...