GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat Koel Music Streaming Server na Ubuntu 18.04

Koel je webová osobní aplikace pro streamování zvuku napsaná ve Vue.js na straně klienta a Laravel na straně serveru. Tento tutoriál se bude zabývat tím, jak nainstalovat Koel na server založený na Ubuntu 18.04.

Předpoklady

  • Server se systémem Ubuntu 18.04.

  • Uživatel sudo bez oprávnění root.

  • Ujistěte se, že je vše aktualizováno.

    $ aktualizace sudo apt &&upgrade sudo apt
  • Několik balíčků, které váš systém potřebuje.

    $ sudo apt install ca-certificates curl unzip build-essential libpng-dev gnupg2 lsb-release ufw -y

    Některé z těchto balíčků již mohou být ve vašem systému nainstalovány.

Konfigurace brány firewall

Prvním krokem je konfigurace firewallu. Než povolíme bránu firewall, musíme povolit porty SSH, jinak se nám zablokuje přístup k našemu serveru.

$ sudo ufw povolit OpenSSH

Povolte bránu firewall.

Povolit $ sudo ufw

Povolit porty HTTP a HTTPS.

$ sudo ufw povolit http
$ sudo ufw povolit https

Zkontrolujte stav brány firewall.

Stav $ sudo ufw

Měli byste vidět podobný výstup.

Stav:Aktivní
k akci od
------- ----
Openssh Povolit kdekoli
80 /TCP Povolit kdekoli
443 /TCP Povolit kdekoli
OpenSSH (v6) Povolit kdekoli (v6)
80 /TCP (V6) Povolit kdekoli (v6)
443 /TCP (V6) Povolit kdekoli (v6)

Nainstalujte Git

Začneme instalací Git.

$ sudo apt install git -y
$ git config --global user.name "Vaše jméno"
$ git config --global user.email "[e-mail chráněný]"

Nainstalujte Node.js

Budeme instalovat Node 10.x místo nejnovější 12.x, protože Koel obsahuje některé zastaralé knihovny, které nejsou kompatibilní s Node 12.

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt install -y nodejs

Zkontrolujte, zda je Node správně nainstalován.

$ node --version

Měli byste vidět podobný výstup.

v10.17.0

Instalovat přízi

Nainstalujte správce balíčků Yarn.

$ 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
$ aktualizace sudo apt &&sudo apt install -y yarn

Zkontrolujte, zda Yarn funguje správně.

$ yarn --version

Měli byste vidět podobný výstup.

1.19.1

Nainstalujte PHP

Nainstalujte PHP 7.2 se všemi jeho požadovanými rozšířeními.

$ sudo apt install -y php7.2-fpm php7.2-mbstring php7.2-bcmath php7.2-xml php7.2-mysql php7.2-curl php7.2-zip

Zkontrolujte, zda PHP funguje správně.

$ php --version

Měli byste vidět podobný výstup.

PHP 7.2.24-1+ubuntu18.04.1+deb.sury.org+1 (cli) (postaveno:24. října 2019 18:29:11) ( NTS )
Autorská práva (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998–2018 Zend Technologies
  se Zend OPcache v7.2.24-1+ubuntu18.04.1+deb.sury.org+1, Copyright (c ) 1999–2018, společnost Zend Technologies

Nainstalujte MariaDB

MariaDB je náhradní náhrada za MySQL, což znamená, že příkazy ke spuštění a ovládání MariaDB jsou stejné jako příkazy pro MySQL. Chcete-li nainstalovat MariaDB, zadejte následující příkazy.

$ sudo apt install mariadb-server

Zkontrolujte, zda je MariaDB správně nainstalována.

$ mysql --version

Měli byste vidět následující výstup.

mysql Ver 15.1 Distrib 10.1.41-MariaDB, pro debian-linux-gnu (x86_64) pomocí readline 5.2

Spuštěním následujícího příkazu provedete výchozí konfiguraci, jako je zadání hesla uživatele root, odebrání anonymních uživatelů, zakázání vzdáleného přihlášení uživatele root a zrušení testovacích tabulek. Zadejte ano pro vše a nastavte heslo uživatele root.

$ sudo mysql_secure_installation

Existuje upozornění na nastavení hesla uživatele root. MariaDB ve výchozím nastavení umožňuje uživatelům root systému přihlásit se do MariaDB bez hesla. Ale pokud budete používat aplikaci třetí strany pro přístup přes root, heslo je nutností, jinak aplikace jako PHPMyAdmin selžou. Za tímto účelem musíte deaktivovat ověřování založené na pluginu, což je výchozí možnost na MariaDB.

Chcete-li zakázat ověřování pluginu a obnovit heslo uživatele root, zadejte nejprve výzvu MySQL pomocí následujícího příkazu.

$ sudo mysql -u root

Nyní zadejte následující příkazy pro deaktivaci ověřování pluginu.

use mysql;
aktualizovat uživatelskou sadu plugin='' kde User='root';
vyprázdnit oprávnění;
exit

Poté restartujte službu MariaDB.

$ sudo systemctl restart mariadb.service

A je to. Až se příště budete chtít přihlásit do MySQL, použijte následující příkaz

$ sudo mysql -u root -p

Po zobrazení výzvy zadejte heslo uživatele root.

Nakonfigurujte MariaDB pro Koel

Nyní musíme nastavit databázi pro použití pro aplikaci Koel. Chcete-li to provést, přihlaste se do výzvy MySQL. Budeme předpokládat, že po zbytek výukového programu používáte výchozí metodu ověřování MariaDB (tj. bez použití hesla root).

$ sudo mysql -u root

Jakmile se zobrazí výzva, zadejte následující příkazy, které vytvoří databázi s názvem koelmusic a uživatel databáze jménem koeluser a udělte mu přístup k databázi.

mysql> VYTVOŘIT DATABÁZI koelmusic;
mysql> VYTVOŘIT UŽIVATELE 'koeluser'@'localhost' IDENTIFIKOVANÉHO PODLE 'vašeho hesla';
mysql> UDĚLEJTE VŠECHNA PRIVILEGIU NA koelmusic.* NA 'koeluser'@ ';
mysql> FLUSH PRIVILEGES;
mysql> exit

Nainstalujte Nginx

Nainstalujte server Nginx.

$ sudo apt install nginx

Zkontrolujte, zda funguje správně.

$ nginx -v

Měli byste vidět následující výstup.

Verze nginx:nginx/1.14.0 (Ubuntu)

Spusťte následující příkaz a přidejte konfigurační soubor pro Koel.

$ sudo nano /etc/nginx/sites-available/koel.conf

Vložte následující kód do editoru.

server {
 listen         *:80;
 název_serveru     koel.example.com;
 root           /var/www/koel;
 index           index.php;
 gzip           on;
 gzip_types     text/prostý text/css aplikace/x-javascript text/xml aplikace/xml aplikace/xml+rss text/javascriptová aplikace/json;
 gzip_comp_level 9;

 # Seznam povolených pouze index.php, robots.txt a některé speciální trasy
 if ($request_uri !~ ^/$|index\.php|robots\.txt|(public|api) /|remote|api-docs|sw\.js) {
   návrat 404;
}

 umístění /media/ {
   interní;

   alias       $upstream_http_x_media_root;

   access_log /var/log/nginx/koel.access.log;
   error_log /var/log/nginx/koel.error.log;
}

 umístění / {
   try_files   $uri $uri/ /index.php?$args;
}

 umístění ~ \.php$ {
   try_files $uri $uri/ /index.php?$args;
   fastcgi_param PATH_INFO $fastcgi_pat h_info;
   fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
   fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
   fastcgi/php.7 unixck:/fpm>soxrun; fastcgi_index index.php;
   fastcgi_split_path_info   ^(.+\.php)(/.+)$;
   fastcgi_intercept_errors on;
   zahrnout fastcgi_params;
}
}

Tento soubor předpokládá, že budeme instalovat Koel do domény koel.example.com a v adresáři /var/www/koel .

Tento konfigurační soubor aktivujte jeho propojením s sites-enabled adresář.

$ sudo ln -s /etc/nginx/sites-available/koel.conf /etc/nginx/sites-enabled/

Otestujte konfiguraci.

$ sudo nginx -t

Měli byste vidět následující výstup indikující, že vaše konfigurace je správná.

nginx:syntaxe konfiguračního souboru /etc/nginx/nginx.conf je v pořádku
nginx:konfigurační soubor /etc/nginx/nginx.conf test je úspěšný

Znovu načtěte službu Nginx.

$ sudo systemctl znovu načíst nginx

Instalovat Composer

Toto je poslední věc, kterou potřebujeme, než přejdeme k instalaci.

Chcete-li nainstalovat Composer, zadejte následující příkazy.

$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
$ php creator-setup.php
$ php - r "unlink('composer-setup.php');"
$ sudo mv skladatel.phar /usr/local/bin/composer

Zkontrolujte, zda funguje správně.

$ skladatel --version

Měli byste vidět následující výstup.

Verze skladatele 1.9.1 2019-11-01 17:20:17

Nainstalovat Koel

Vytvořte prázdnou kořenovou složku dokumentů pro Koel.

$ sudo mkdir -p /var/www/koel

-p argument zajišťuje, že nadřazené adresáře var a www jsou automaticky vytvořeny, pokud neexistují.

Přejděte do kořenové složky dokumentu.

$ cd /var/www/koel

Změňte vlastnictví kořenového adresáře dokumentu na user což je uživatel bez oprávnění root, kterého jsme použili pro výukový program.

$ sudo chown -R user:user /var/www/koel

Naklonujte úložiště Koel Git a vyzkoušejte jeho nejnovější verzi. Nejnovější verzi si můžete zkontrolovat na stránce vydání.

$ git clone --recurse-submodules https://github.com/phanan/koel.git .
$ git checkout v4.1.1

Nainstalujte závislosti.

$ instalace skladatele

Spusťte následující příkaz pro nastavení databáze a účtu správce. Zadejte mysql jako typ databáze přeskočte port a zadejte přihlašovací údaje databáze, které jsme vytvořili výše. Pro složku médií můžete zadat něco jako /home/user/songs .

$ php artisan koel:init

Změňte vlastnictví kořenové složky dokumentu zpět na www-data uživatel.

$ sudo chown -R www-data:www-data /var/www/koel

Nastavení je nyní dokončeno. Otevřete koel.example.com ve svém prohlížeči a přihlaste se pomocí přihlašovacích údajů, které jste vytvořili výše, a začněte streamovat. Web společnosti Koel je přístupný také přes mobil.

Nakonfigurujte Koel

Existuje více podrobností, které můžete nakonfigurovat úpravou souboru .env soubor s následujícím příkazem.

$ sudo nano /var/www/koel/.env

Zde můžete zadat podrobnosti o SMTP, nakonfigurovat Youtube a Last.fm pro Koel a dělat spoustu dalších věcí.

Znovu načtěte server Nginx a implementujte změny.

Pokud chcete obnovit heslo správce, můžete to provést zadáním následujícího příkazu.

$ php artisan koel:admin:change-password

Pokud chcete v knihovně médií vyhledat aktualizované soubory, můžete tak učinit následujícím příkazem.

$ php artisan koel:sync

Měli byste vidět následující výstup.

Synchronizace Koel byla zahájena.
953/953 [????????????????????????????????] 100 %
Hotovo! 944 nových nebo aktualizovaných skladeb, 0 nezměněných skladeb a 9 neplatných souborů.

Příponu příkazu s -v příznak, který vám poskytne další podrobnosti, jako jsou chyby synchronizace.

Tento příkaz můžete dokonce nastavit jako cron úlohu, například tak, aby se spouštěla ​​každou půlnoc. Chcete-li to provést, spusťte následující příkaz.

$ crontab -e

Vyberte 1 (nano ) jako váš editor.

Vložte následující řádek na konec souboru.

0 0 * * * cd /var/www/koel &&/usr/bin/php artisan koel:sync>/dev/null 2>&1

Uložte soubor stisknutím Ctrl + X a zadáním Y po výzvě. Nyní se vaše knihovna médií bude synchronizovat každou půlnoc.

Další informace naleznete v oficiální dokumentaci Koel.

Nastavení HTTPS pomocí Let's Encrypt

Pro použití Let's encrypt musíme nainstalovat Certbot balíček.

Přidejte úložiště.

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

Nainstalujte Certbot.

$ sudo apt install python-certbot-nginx

Nainstalujte certifikát.

$ sudo certbot --nginx -d koel.example.com

Pokud používáte nástroj na tomto serveru poprvé, musíte souhlasit s podmínkami a zadat svou e-mailovou adresu. Řekněte ne na otázku, zda chcete sdílet svůj e-mail s nadací EFF.

Pokud se to podaří, certbot se vás zeptá, jak chcete nakonfigurovat nastavení HTTPS.

Zvolte prosím, zda chcete přesměrovat provoz HTTP na HTTPS a odebrat tak přístup HTTP.
--------------------------- -------------------------------------------------- --
1:Žádné přesměrování - Nedělejte žádné další změny v konfiguraci webového serveru.
2:Přesměrování - Proveďte přesměrování všech požadavků na zabezpečený přístup HTTPS. Tuto možnost vyberte pro
nové weby, nebo pokud jste si jisti, že váš web funguje na HTTPS. Tuto změnu
můžete vrátit zpět úpravou konfigurace vašeho webového serveru.
------------------------------ -------------------------------------------------
Vyberte příslušné číslo [1-2] a poté [enter] (zrušte stisknutím 'c'):

Vyberte 2 a poté stiskněte ENTER . Váš certifikát je nyní nainstalován a aktivován. Váš certifikát se automaticky obnoví za 90 dní.

Závěr

Tím náš tutoriál končí. Můžete streamovat média ze svého serveru do svého srdce.


Ubuntu
  1. Jak nainstalovat RabbitMQ Server na Ubuntu 18.04 &16.04 LTS

  2. Jak nainstalovat Gitlab Server na Ubuntu 18.04 &16.04 LTS

  3. Jak nainstalovat Ansible na Ubuntu Server 21.04

  1. Jak nainstalovat webový server Nginx na Ubuntu 18.04

  2. Jak nainstalovat MsSQL Server 2019 na Ubuntu 20.04

  3. Jak nainstalovat Xrdp Server na Ubuntu 20.04 LTS

  1. Jak nainstalovat Sonerezh Music Streaming Server na Ubuntu 18.04 LTS

  2. Jak nainstalovat Ampache Music Streaming Server na Ubuntu 20.04

  3. Jak nainstalovat Ampache Music Streaming Server na Fedora 33