如何在Fedora 28上安装Koel

Koel是一个简单的基于Web的个人音频流应用程序,在客户端用Vue编写,在服务器端用Laravel编写。Koel源代码托管在Github上。本指南将向您展示如何通过使用PHP,MariaDB,Nginx,Node.js,Yarn和Composer在新的Fedora 28 Vultr实例上安装Koel。

要求

  • PHP 5.6.4或更高版本,具有以下扩展名:
    • 的OpenSSL
    • PDO
    • 分词器
    • XML格式
  • 玛丽亚数据库
  • 最新的稳定版Node.js与 yarn
  • 作曲家
  • Nginx的

在你开始之前

检查Fedora版本。

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

创建一个具有访问权限的新非root用户帐户sudo并切换到该帐户。

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

注意用您的用户名替换johndoe

设置时区。

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

确保您的系统是最新的。

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

安装必要的软件包。

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

为简单起见,请禁用SELinux和防火墙。

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

安装PHP

安装PHP和必需的PHP扩展。

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

检查版本。

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

启动并启用PHP-FPM。

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

安装MariaDB和设置数据库

安装MariaDB。

sudo dnf install -y mariadb-server

检查版本。

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

启动并启用MariaDB。

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

运行mysql_secure_installation以提高安全性并设置MariaDB root用户的密码。

sudo mysql_secure_installation

root用户身份连接到MariaDB 。

mysql -u root -p
# Enter password:

为Koel创建一个空的MariaDB数据库和用户,并记住凭据。

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

安装和配置Nginx

安装Nginx。

sudo dnf install -y nginx

检查版本。

nginx -v
# nginx version: nginx/1.12.1

启动并启用Nginx。

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

配置Nginx。运行sudo vim /etc/nginx/conf.d/koel.conf并使用以下配置填充文件。

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;
   }
}

测试Nginx配置。

sudo nginx -t

重新加载Nginx。

sudo systemctl reload nginx.service

安装Node.js

安装Node.js。

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

检查版本。

node --version
# v8.11.3

安装纱

安装Yarn程序包管理器。

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

检查版本。

yarn --version
# 1.9.2

安装作曲家

安装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

检查版本。

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

安装Koel

创建一个空文件根文件夹,将在其中安装Koel。

sudo mkdir -p /var/www/koel

导航到文档根文件夹。

cd /var/www/koel

/var/www/koel文件夹的所有权更改为user johndoe

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

将Koel存储库克隆到该存储库,签出最新的标记版本并安装其依赖项。

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

运行php artisan koel:init命令以设置数据库和管理员帐户。

php artisan koel:init

运行vim .env并设置APP_URL为您的URL。

APP_URL=http://example.com

运行yarn install以编译和安装前端依赖项。

yarn install

注意: 如果内存不足,您将收到一条错误消息。为避免这种情况,如果第一种解决方案无济于事,则可以暂时停止MariaDB,Nginx和PHP-FPM服务,或配置交换内存。

/var/www/koel目录的所有权更改为nginx

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

运行sudo vim /etc/php-fpm.d/www.conf并将用户和组设置为nginx。最初,它将设置为apache

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

重新启动PHP-FPM。

sudo systemctl restart php-fpm.service

现在安装完成。要继续,请在网络浏览器中打开您的域,然后您会看到一个登录页面。然后,通过输入您先前创建的管理员帐户凭据登录。



Leave a Comment

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在Fedora 26 LAMP VPS上安装MODX Revolution

如何在Fedora 26 LAMP VPS上安装MODX Revolution

使用其他系统?MODX Revolution是一种快速,灵活,可扩展,免费和开源的企业级内容管理系统(CMS),由

在Fedora 28上安装Anchor CMS

在Fedora 28上安装Anchor CMS

使用其他系统?Anchor是用PHP编写的轻量级开源博客CMS。Anchors源代码托管在GitHub上。本指南将向您展示

如何在Fedora 26 LAMP VPS上安装Pagekit 1.0 CMS

如何在Fedora 26 LAMP VPS上安装Pagekit 1.0 CMS

使用其他系统?Pagekit 1.0 CMS是一个美观,模块化,可扩展,轻量级,免费和开源的内容管理系统(CMS),具有

如何在Fedora 29上安装Attendize

如何在Fedora 29上安装Attendize

使用其他系统?简介Attendize是一个基于Laravel PHP框架的开源门票销售和事件管理平台。Attendiz

如何在Fedora 28上安装Bludit CMS

如何在Fedora 28上安装Bludit CMS

使用其他系统?Bludit是一个用PHP编写的简单,快速且灵活的博客CMS。Bludit使用JSON格式的文件来存储内容,因此您不必

如何在Fedora 26 LAMP VPS上安装Couch CMS 2.0

如何在Fedora 26 LAMP VPS上安装Couch CMS 2.0

使用其他系统?Couch CMS是一个简单,灵活,免费和开源的内容管理系统(CMS),可让Web设计人员进行设计

如何在Fedora 28上安装BookStack

如何在Fedora 28上安装BookStack

使用其他系统?BookStack是一个简单的自托管平台,用于组织和存储信息。BookStack是完全免费且开源的,

如何在Fedora 25上部署Ghost v0.11 LTS

如何在Fedora 25上部署Ghost v0.11 LTS

使用其他系统?Ghost是一个开放源代码博客平台,自201年以来一直在开发人员和普通用户中广受欢迎。

如何在Fedora 28上安装AWStats

如何在Fedora 28上安装AWStats

AWStats是用于分析Web流量的有用工具。可以通过浏览器访问其HTML界面,从而轻松了解谁在查看您

如何在CentOS 8,Ubuntu 18.04,Debian 10和Fedora 31上安装Golang 1.13

如何在CentOS 8,Ubuntu 18.04,Debian 10和Fedora 31上安装Golang 1.13

Go(也称为Golang)是Google开发的一种静态类型的,类似于C的编程语言。追求简单性和多功能性使其成为b

如何在Fedora 28上安装PyroCMS

如何在Fedora 28上安装PyroCMS

使用其他系统?PyroCMS是用PHP编写的开源CMS。PyroCMS源代码托管在GitHub上。在本指南中,请仔细阅读整个条目

如何在Fedora 26 LAMP VPS上安装BlogoText CMS

如何在Fedora 26 LAMP VPS上安装BlogoText CMS

使用其他系统?BlogoText CMS是一个简单,轻便,免费和开源的内容管理系统(CMS)和极简博客引擎

在Fedora 26上安装TaskServer(taskd)

在Fedora 26上安装TaskServer(taskd)

使用其他系统?TaskWarrior是一个开源时间管理工具,它是对Todo.txt应用程序及其克隆的改进。由于

如何在Fedora 29上安装Kanboard

如何在Fedora 29上安装Kanboard

使用其他系统?简介Kanboard是一个免费的开源项目管理软件程序,旨在促进和可视化。

如何在Fedora 28上安装Neos CMS

如何在Fedora 28上安装Neos CMS

使用其他系统?Neos是一个以CMS和应用程序框架为核心的内容应用程序平台。本指南将向您展示如何安装

如何在Fedora 28上安装DokuWiki

如何在Fedora 28上安装DokuWiki

使用其他系统?DokuWiki是用PHP编写的开源Wiki程序,不需要数据库。它将数据存储在文本文件中。德库维克

如何在Fedora 26 LAMP VPS上安装Paste 2.1

如何在Fedora 26 LAMP VPS上安装Paste 2.1

使用其他系统?Paste 2.1是一个简单,灵活,免费和开源的pastebin应用程序,用于存储代码,文本等。最初是

如何在Fedora 26 LAMP VPS上安装Redaxscript 3.2 CMS

如何在Fedora 26 LAMP VPS上安装Redaxscript 3.2 CMS

使用其他系统?Redaxscript 3.2 CMS是一款现代,超轻量级,免费和开源的内容管理系统(CMS),具有火箭fas

如何在Fedora 30上安装和配置TaskBoard

如何在Fedora 30上安装和配置TaskBoard

使用其他系统?简介TaskBoard是一个免费的开源工具,可以用来跟踪需要完成的事情。它提供

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息