Cara Memasang Koel di CentOS 7

Koel adalah aplikasi streaming audio peribadi berasaskan web yang ditulis dalam Vue di sisi pelanggan dan Laravel di sebelah pelayan. Kod sumber Koel dihoskan pada Github . Panduan ini akan menunjukkan kepada anda cara memasang Koel pada instance CentOS 7 Vultr yang baru dengan menggunakan PHP, MariaDB, Nginx, Node.js, Yarn dan Composer.

Keperluan

  • PHP versi 5.6.4 atau lebih tinggi, dengan sambungan berikut:
    • OpenSSL
    • PDO
    • Mbstring
    • Tokenizer
    • XML
  • MariaDB
  • Versi stabil terkini Node.js dengan yarn
  • Komposer
  • Nginx

Sebelum awak bermula

Semak versi CentOS.

cat /etc/centos-release
# CentOS Linux release 7.5.1804 (Core)

Buat akaun pengguna bukan root baru dengan sudoakses dan beralih kepadanya.

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

NOTA : Gantikan johndoedengan nama pengguna anda .

Sediakan zon waktu.

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

Pastikan sistem anda terkini.

sudo yum update -y

Pasang pakej yang diperlukan.

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

Untuk kesederhanaan, matikan SELinux dan Firewall.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

Pasang PHP

Persiapkan repository YUM Webtatic.

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Pasang PHP dan sambungan PHP yang diperlukan.

sudo yum install -y php72w php72w-cli php72w-fpm php72w-common php72w-mysql php72w-curl php72w-json php72w-zip php72w-xml php72w-mbstring

Semak versi.

php --version
# PHP 7.2.7 (cli) (built: Jul  1 2018 08:22:47) ( NTS )

Mulakan dan aktifkan perkhidmatan PHP-FPM.

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

Pasang MariaDB dan sediakan pangkalan data

Buat repo untuk MariaDB. Buka sudo vi /etc/yum.repos.d/MariaDB.repodan isi dengan yang berikut.

[mariadb]
name = MariaDB
baseurl = https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Simpan dan keluar, kemudian pasang MariaDB.

sudo yum install -y MariaDB-server MariaDB-client

Semak versi.

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

Mulakan dan aktifkan perkhidmatan MariaDB.

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

Jalankan mysql_secure_installationuntuk meningkatkan keselamatan dan tetapkan kata laluan untuk rootpengguna MariaDB .

sudo mysql_secure_installation

Sambungkan ke MariaDB sebagai rootpengguna.

mysql -u root -p
# Enter password:

Buat pangkalan data dan pengguna MariaDB kosong untuk Koel, dan ingat kelayakan.

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

Pasang dan konfigurasikan Nginx

Pasang Nginx.

sudo yum install -y nginx

Semak versi.

sudo nginx -v
# nginx version: nginx/1.12.2

Mulakan dan aktifkan Nginx.

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

Konfigurasikan Nginx. Jalankan sudo vim /etc/nginx/conf.d/koel.confdan isi fail dengan konfigurasi berikut.

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

Uji konfigurasi Nginx.

sudo nginx -t

Muat semula Nginx.

sudo systemctl reload nginx.service

Pasang Node.js

Pasang Node.js.

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

Semak versi.

node --version
# v8.11.3

Pasang Benang

Pasang pengurus pakej Yarn.

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

Semak versi.

yarn --version
# 1.9.2

Pasang Komposer

Pasang Komposer.

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

Semak versi.

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

Pasang Koel

Buat folder akar dokumen kosong di mana Koel akan dipasang.

sudo mkdir -p /var/www/koel

Navigasi ke folder root dokumen.

cd /var/www/koel

Tukar pemilikan /var/www/koelfolder kepada pengguna johndoe.

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

Klon repositori Koel padanya, semak keluar pelepas yang dilabel terbaru dan pasangkan dependensinya.

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

Jalankan php artisan koel:initarahan untuk menyediakan pangkalan data dan akaun admin.

php artisan koel:init

Jalankan vim .envdan tetapkan APP_URLke URL anda.

APP_URL=http://example.com

Jalankan yarn installuntuk menyusun dan memasang kebergantungan depan.

yarn install

CATATAN: Sekiranya kehabisan memori, anda akan menerima mesej ralat. Untuk mengelakkannya, anda boleh menghentikan perkhidmatan MariaDB, Nginx dan PHP-FPM untuk sementara waktu, atau mengkonfigurasi memori swap, jika penyelesaian pertama tidak membantu.

Tukar pemilikan /var/www/koeldirektori ke nginx.

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

Jalankan sudo vim /etc/php-fpm.d/www.confdan tetapkan pengguna dan kumpulan ke nginx. Pada mulanya, ia akan ditetapkan ke apache.

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

Mulakan semula PHP-FPM.

sudo systemctl restart php-fpm.service

Persediaan kini selesai. Untuk meneruskan, buka domain anda dalam pelayar web dan anda akan melihat halaman log masuk. Kemudian, log masuk dengan memasukkan kelayakan akaun pentadbir anda yang telah anda buat sebelumnya.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut