Cum se instalează Koel pe Fedora 28

Koel este o aplicație simplă de transmisie audio personală bazată pe web, scrisă în Vue pe partea de client și Laravel pe server. Codul sursă Koel este găzduit pe Github . Acest ghid vă va arăta cum să instalați Koel într-o nouă instanță Fedora 28 Vultr folosind PHP, MariaDB, Nginx, Node.js, Fire și Composer.

cerinţe

  • Versiunea PHP 5.6.4 sau mai mare, cu următoarele extensii:
    • OpenSSL
    • DOP
    • mbstring
    • Tokenizer
    • XML
  • MariaDB
  • Ultima versiune stabilă de Node.js cu yarn
  • Compozitor
  • Nginx

Înainte de a începe

Verificați versiunea Fedora.

cat /etc/fedora-release
# Fedora release 28 (Twenty Eight)

Creați un nou cont de utilizator non-root cu sudoacces și treceți la acesta.

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

NOTĂ : Înlocuiți johndoecu numele de utilizator .

Setați fusul orar.

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Asigurați-vă că sistemul dvs. este actualizat.

sudo dnf check-upgrade || sudo dnf upgrade -y

Instalați pachetele necesare.

sudo dnf install -y wget curl vim git && sudo dnf groupinstall -y "Development Tools"

Pentru simplitate, dezactivați SELinux și Firewall.

sudo setenforce 0; sudo systemctl stop firewalld; sudo systemctl disable firewalld

Instalați PHP

Instalați PHP și extensiile PHP necesare.

sudo dnf install -y php-cli php-fpm php-common php-mysqlnd php-curl php-json php-zip php-xml php-mbstring

Verificați versiunea.

php --version
# PHP 7.2.8 (cli) (built: Jul 17 2018 05:35:43) ( NTS )

Porniți și activați PHP-FPM.

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Instalați MariaDB și baza de date de configurare

Instalați MariaDB.

sudo dnf install -y mariadb-server

Verificați versiunea.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.16-MariaDB, for Linux (x86_64) using readline 5.1

Porniți și activați MariaDB.

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Rulați mysql_secure_installationpentru a îmbunătăți securitatea și setați parola pentru rootutilizatorul MariaDB .

sudo mysql_secure_installation

Conectați-vă la MariaDB ca rootutilizator.

mysql -u root -p
# Enter password:

Creați o bază de date MariaDB și un utilizator gol pentru Koel și nu uitați de datele de acreditare.

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT

Instalați și configurați Nginx

Instalați Nginx.

sudo dnf install -y nginx

Verificați versiunea.

nginx -v
# nginx version: nginx/1.12.1

Porniți și activați Nginx.

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Configurați Nginx. Rulați sudo vim /etc/nginx/conf.d/koel.confși populați fișierul cu următoarea configurație.

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:/run/php-fpm/www.sock;
     fastcgi_index index.php;
     fastcgi_split_path_info ^(.+\.php)(/.+)$;
     fastcgi_intercept_errors on;
     include fastcgi_params;
   }
}

Testați configurația Nginx.

sudo nginx -t

Reîncărcați Nginx.

sudo systemctl reload nginx.service

Instalați Node.js

Instalează Node.js.

curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
sudo dnf -y install nodejs

Verificați versiunea.

node --version
# v8.11.3

Instalați fire

Instalați managerul de pachete Yarn.

curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
sudo dnf install -y yarn

Verificați versiunea.

yarn --version
# 1.9.2

Instalați Composer

Instalați 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

Verificați versiunea.

composer --version
# Composer version 1.6.5 2018-05-04 11:44:59

Instalați Koel

Creați un dosar rădăcină document gol unde va fi instalat Koel.

sudo mkdir -p /var/www/koel

Navigați la folderul rădăcină al documentului.

cd /var/www/koel

Schimbați proprietatea /var/www/koelfolderului la utilizator johndoe.

sudo chown -R johndoe:johndoe /var/www/koel

Clonați depozitul Koel, verificați cea mai recentă versiune etichetată și instalați dependențele sale.

git clone https://github.com/phanan/koel.git .
git checkout v3.7.2
composer install

Rulați php artisan koel:initcomanda pentru a configura baza de date și contul de admin.

php artisan koel:init

Rulați vim .envși setați APP_URLadresa URL.

APP_URL=http://example.com

Rulați yarn installsă compilați și să instalați dependențe front-end.

yarn install

NOTĂ: Dacă rămâneți fără memorie, veți primi un mesaj de eroare. Pentru a evita acest lucru, puteți opri temporar serviciile MariaDB, Nginx și PHP-FPM sau puteți configura memoria swap, dacă prima soluție nu ajută.

Schimbați proprietatea /var/www/koeldirectorului în nginx.

sudo chown -R nginx:nginx /var/www/koel

Rulați sudo vim /etc/php-fpm.d/www.confși setați utilizatorul și grupul la nginx. Initial, va fi setat pe apache.

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Reporniți PHP-FPM.

sudo systemctl restart php-fpm.service

Configurarea este acum completă. Pentru a continua, deschideți-vă domeniul într-un browser web și veți vedea o pagină de conectare. Apoi, conectați-vă introducând datele de autentificare ale contului dvs. de administrator pe care le-ați creat anterior.

Lasă un comentariu

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.

6 lucruri extrem de nebunești despre Nintendo Switch

6 lucruri extrem de nebunești despre Nintendo Switch

Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.

Promisiuni tehnologice care sunt încă nelivrate

Promisiuni tehnologice care sunt încă nelivrate

Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!

Te-ai întrebat vreodată cum câștigă hackerii bani?

Te-ai întrebat vreodată cum câștigă hackerii bani?

Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe