Koel ist eine einfache webbasierte persönliche Audio-Streaming-App, die auf der Clientseite in Vue und auf der Serverseite in Laravel geschrieben wurde. Koel-Quellcode wird auf Github gehostet . Diese Anleitung zeigt Ihnen, wie Sie Koel auf einer neuen Debian 9 Vultr-Instanz installieren.
Bedarf
- PHP Version 5.6.4 oder höher mit den folgenden Erweiterungen:
- OpenSSL
- PDO
- Mbstring
- Tokenizer
- XML
- MariaDB
- NodeJS LTS mit
yarn
- Komponist
Bevor Sie beginnen
Überprüfen Sie die Debian-Version.
lsb_release -ds
# Debian GNU/Linux 9.5 (stretch)
Stellen Sie sicher, dass Ihr System auf dem neuesten Stand ist.
apt update && apt upgrade -y
Installieren Sie die erforderlichen Pakete.
apt install -y build-essential sudo dirmngr wget curl vim git
Erstellen Sie ein neues Nicht-Root- Benutzerkonto mit sudoZugriff und wechseln Sie zu diesem.
adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe
HINWEIS : Ersetzen Sie johndoedurch Ihren Benutzernamen .
Richten Sie die Zeitzone ein.
sudo dpkg-reconfigure tzdata
Installieren Sie PHP
Installieren Sie PHP und die erforderlichen PHP-Erweiterungen.
sudo apt install -y php7.0 php7.0-cli php7.0-fpm php7.0-common php7.0-mbstring php7.0-xml php7.0-mysql php7.0-curl php7.0-zip
Überprüfe die Version.
php --version
# PHP 7.0.30-0+deb9u1 (cli) (built: Jun 14 2018 13:50:25) ( NTS )
# Copyright (c) 1997-2017 The PHP Group
# Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
# with Zend OPcache v7.0.30-0+deb9u1, Copyright (c) 1999-2017, by Zend Technologies
Installieren Sie MariaDB
Installieren Sie MariaDB.
sudo apt install -y mariadb-server
Überprüfe die Version.
mysql --version
# mysql Ver 15.1 Distrib 10.1.26-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Führen Sie das mysql_secure installationSkript aus, um die Sicherheit zu verbessern, und legen Sie das Kennwort für den MariaDB- rootBenutzer fest.
sudo mysql_secure_installation
Stellen Sie als Root-Benutzer eine Verbindung zur MariaDB-Shell her.
sudo mysql -u root -p
# Enter password
Erstellen Sie eine leere MariaDB-Datenbank und einen Benutzer für Koel und merken Sie sich die Anmeldeinformationen.
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;
Installieren Sie Nginx
Installieren Sie Nginx.
sudo apt install -y nginx
Überprüfe die Version.
sudo nginx -v
# nginx version: nginx/1.10.3
Führen Sie sudo vim /etc/nginx/sites-available/koel.confNginx für Koel aus und konfigurieren Sie es.
server {
listen 80;
server_name example.com;
root /var/www/koel;
index index.php;
# Whitelist only index.php, robots.txt, and those start with public/ or api/ or remote
if ($request_uri !~ ^/$|index\.php|robots\.txt|api/|public/|remote) {
return 404;
}
location /media/ {
internal;
# A 'X-Media-Root' should be set to media_path settings from upstream
alias $upstream_http_x_media_root;
}
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.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 unix:/var/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_intercept_errors on;
include fastcgi_params;
}
}
Aktivieren Sie die neue koel.confKonfiguration, indem Sie die Datei mit dem sites-enabledVerzeichnis verknüpfen .
sudo ln -s /etc/nginx/sites-available/koel.conf /etc/nginx/sites-enabled/
Testen Sie die Nginx-Konfiguration.
sudo nginx -t
Laden Sie Nginx neu.
sudo systemctl reload nginx.service
Installieren Sie Node.js.
Installieren Sie Node.js.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt install -y nodejs
Überprüfe die Version.
node --version
# v8.11.3
Garn einlegen
Installieren Sie den Garnpaket-Manager.
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt update && sudo apt install -y yarn
Überprüfe die Version.
yarn --version
# 1.7.0
Installieren Sie Composer
Installieren Sie Composer.
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer
Überprüfe die Version.
composer --version
# Composer version 1.6.5 2018-05-04 11:44:59
Installieren Sie Koel
Erstellen Sie einen leeren Dokumentstammordner, in dem Koel installiert wird.
sudo mkdir -p /var/www/koel
Navigieren Sie zum Dokumentstammordner.
cd /var/www/koel
Ändern Sie den Besitz des /var/www/koelBenutzers johndoe.
sudo chown -R johndoe:johndoe /var/www/koel
Klonen Sie das Koel-Repository darauf, checken Sie die neueste getaggte Version aus und installieren Sie die Abhängigkeiten.
git clone https://github.com/phanan/koel.git .
git checkout v3.7.2
composer install
Führen Sie den php artisan koel:initBefehl aus, um die Datenbank und das Administratorkonto einzurichten.
php artisan koel:init
Führen Sie aus vim .envund stellen Sie APP_URLIhre URL ein.
APP_URL=http://example.com
Führen Sie yarn installdiese Option aus, um Front-End-Abhängigkeiten zu kompilieren und zu installieren.
yarn install
Ändern Sie den Besitz des /var/www/koelVerzeichnisses in www-data.
sudo chown -R www-data:www-data /var/www/koel
Das Setup ist jetzt abgeschlossen. Um fortzufahren, öffnen Sie Ihre Domain in einem Webbrowser und Sie sehen eine Anmeldeseite. Melden Sie sich dann an, indem Sie die zuvor erstellten Anmeldeinformationen Ihres Administratorkontos eingeben.