Requisits
Abans que comencis
Instal·leu PHP
Instal·leu MySQL
Instal·leu Nginx
Instal·leu Node.js
Instal·leu el fil
Instal·leu Composer
Instal·leu Koel
Koel és una senzilla aplicació de reproducció d'àudio personal basada en web escrita en Vue al costat del client i Laravel al costat del servidor. El codi font de Koel està allotjat a Github . Aquesta guia us mostrarà com instal·lar Koel en una nova instància Vultr d'Ubuntu 18.04 LTS.
Requisits
- PHP versió 5.6.4 o superior i les extensions següents:
- OpenSSL
- DOP
- Mbstring
- Tokenitzador
- XML
- MySQL
- NodeJS LTS amb
yarn
- Compositor
Abans que comencis
Comproveu la versió d'Ubuntu.
lsb_release -ds
# Ubuntu 18.04 LTS
Creeu un nou compte d'usuari no root amb sudoaccés i canvieu-hi.
adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe
NOTA : Substituïu-lo johndoepel vostre nom d'usuari .
Configura la zona horària.
sudo dpkg-reconfigure tzdata
Assegureu-vos que el vostre sistema estigui actualitzat.
sudo apt update && sudo apt upgrade -y
Instal·leu el build-essentialpaquet.
sudo apt install -y build-essential
Instal·leu PHP
Instal·leu PHP 7.2 i les extensions PHP necessàries.
sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-xml php7.2-mysql php7.2-curl php7.2-zip
Comproveu la versió.
php --version
# PHP 7.2.7-0ubuntu0.18.04.2 (cli) (built: Jul 4 2018 16:55:24) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.2.7-0ubuntu0.18.04.2, Copyright (c) 1999-2018, by Zend Technologies
Instal·leu MySQL
Instal·leu MySQL.
sudo apt install -y mysql-server
Comproveu la versió.
mysql --version
# mysql Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using EditLine wrapper
Executeu l' mysql_secure installationscript per millorar la seguretat i establiu la contrasenya per a l' rootusuari de MySQL .
sudo mysql_secure_installation
Connecteu-vos a l'intèrpret d'ordres de MySQL com a usuari root.
sudo mysql -u root -p
# Enter password
Creeu una base de dades MySQL buida i un usuari per a Koel i recordeu les credencials.
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;
Instal·leu Nginx
Instal·leu Nginx.
sudo apt install -y nginx
Comproveu la versió.
sudo nginx -v
# nginx version: nginx/1.14.0 (Ubuntu)
Executeu sudo vim /etc/nginx/sites-available/koel.confi configureu Nginx per a Koel.
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.2-fpm.sock;
fastcgi_index index.php;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_intercept_errors on;
include fastcgi_params;
}
}
Activeu la nova koel.confconfiguració enllaçant el fitxer al sites-enableddirectori.
sudo ln -s /etc/nginx/sites-available/koel.conf /etc/nginx/sites-enabled/
Proveu la configuració de Nginx.
sudo nginx -t
Torna a carregar Nginx.
sudo systemctl reload nginx.service
Instal·leu Node.js
Instal·leu Node.js.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt install -y nodejs
Comproveu la versió.
node --version
# v8.11.3
Instal·leu el fil
Instal·leu el gestor de paquets 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
sudo apt update && sudo apt install -y yarn
Comproveu la versió.
yarn --version
# 1.7.0
Instal·leu Composer
Instal·leu 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
Comproveu la versió.
composer --version
# Composer version 1.6.5 2018-05-04 11:44:59
Instal·leu Koel
Creeu una carpeta arrel del document buida on s'instal·larà Koel.
sudo mkdir -p /var/www/koel
Navegueu a la carpeta arrel del document.
cd /var/www/koel
Canvia la propietat /var/www/koela l'usuari johndoe.
sudo chown -R johndoe:johndoe /var/www/koel
Cloneu-hi el dipòsit de Koel, comproveu la darrera versió etiquetada i instal·leu-ne les dependències.
git clone https://github.com/phanan/koel.git .
git checkout v3.7.2
composer install
Executeu l' php artisan koel:initordre per configurar la base de dades i el compte d'administrador.
php artisan koel:init
Executeu vim .envi configureu el APP_URLvostre URL.
APP_URL=http://example.com
Executeu yarn installper compilar i instal·lar dependències de front-end.
yarn install
Canvia la propietat del /var/www/koeldirectori a www-data.
sudo chown -R www-data:www-data /var/www/koel
La configuració ja s'ha completat. Per continuar, obriu el vostre domini en un navegador web i veureu una pàgina d'inici de sessió. A continuació, inicieu la sessió introduint les credencials del vostre compte d'administrador que hàgiu creat anteriorment.