Jak zainstalować Koel na CentOS 7

Koel to prosta internetowa aplikacja do strumieniowego przesyłania dźwięku napisana w języku Vue po stronie klienta, a Laravel po stronie serwera. Kod źródłowy Koela jest hostowany na Github . W tym przewodniku pokażemy, jak zainstalować Koela na nowej instancji CentOS 7 Vultr przy użyciu PHP, MariaDB, Nginx, Node.js, Yarn i Composer.

Wymagania

  • PHP w wersji 5.6.4 lub nowszej, z następującymi rozszerzeniami:
    • OpenSSL
    • ChNP
    • Mbstring
    • Tokenizer
    • XML
  • MariaDB
  • Najnowsza stabilna wersja Node.js z yarn
  • Kompozytor
  • Nginx

Zanim zaczniesz

Sprawdź wersję CentOS.

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

Utwórz nowe konto użytkownika innego niż root z sudodostępem i przejdź do niego.

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

UWAGA : Zamień na johndoeswoją nazwę użytkownika .

Ustaw strefę czasową.

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

Upewnij się, że twój system jest aktualny.

sudo yum update -y

Zainstaluj niezbędne pakiety.

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

Dla uproszczenia wyłącz SELinux i Firewall.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

Zainstaluj PHP

Skonfiguruj repozytorium Webtatic YUM.

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

Zainstaluj PHP i wymagane rozszerzenia PHP.

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

Sprawdź wersję.

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

Uruchom i włącz usługę PHP-FPM.

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

Zainstaluj MariaDB i skonfiguruj bazę danych

Utwórz repozytorium dla MariaDB. Otwórz sudo vi /etc/yum.repos.d/MariaDB.repoi wypełnij następujące pola.

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

Zapisz i wyjdź, a następnie zainstaluj MariaDB.

sudo yum install -y MariaDB-server MariaDB-client

Sprawdź wersję.

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

Uruchom i włącz usługę MariaDB.

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

Uruchom, mysql_secure_installationaby poprawić bezpieczeństwo i ustaw hasło dla rootużytkownika MariaDB .

sudo mysql_secure_installation

Połącz się z MariaDB jako rootużytkownik.

mysql -u root -p
# Enter password:

Utwórz pustą bazę danych i użytkownika MariaDB dla Koela i zapamiętaj poświadczenia.

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

Zainstaluj i skonfiguruj Nginx

Zainstaluj Nginx.

sudo yum install -y nginx

Sprawdź wersję.

sudo nginx -v
# nginx version: nginx/1.12.2

Uruchom i włącz Nginx.

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

Skonfiguruj Nginx. Uruchom sudo vim /etc/nginx/conf.d/koel.confi wypełnij plik następującą konfiguracją.

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

Przetestuj konfigurację Nginx.

sudo nginx -t

Załaduj ponownie Nginx.

sudo systemctl reload nginx.service

Zainstaluj Node.js

Zainstaluj Node.js.

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

Sprawdź wersję.

node --version
# v8.11.3

Zainstaluj Przędzę

Zainstaluj menedżera pakietów Yarn.

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

Sprawdź wersję.

yarn --version
# 1.9.2

Zainstaluj Composer

Zainstaluj 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

Sprawdź wersję.

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

Zainstaluj Koel

Utwórz pusty folder główny dokumentu, w którym zostanie zainstalowany Koel.

sudo mkdir -p /var/www/koel

Przejdź do folderu głównego dokumentu.

cd /var/www/koel

Zmień własność /var/www/koelfolderu na użytkownika johndoe.

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

Sklonuj do niego repozytorium Koel, sprawdź najnowsze oznaczone wydanie i zainstaluj jego zależności.

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

Uruchom php artisan koel:initpolecenie, aby skonfigurować bazę danych i konto administratora.

php artisan koel:init

Uruchom vim .envi ustaw APP_URLswój adres URL.

APP_URL=http://example.com

Uruchom, yarn installaby skompilować i zainstalować zależności frontonu.

yarn install

UWAGA: Jeśli zabraknie pamięci, pojawi się komunikat o błędzie. Aby tego uniknąć, możesz tymczasowo zatrzymać usługi MariaDB, Nginx i PHP-FPM lub skonfigurować pamięć wymiany, jeśli pierwsze rozwiązanie nie pomoże.

Zmień własność /var/www/koelkatalogu na nginx.

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

Uruchom sudo vim /etc/php-fpm.d/www.confi ustaw użytkownika i grupę na nginx. Początkowo będzie ustawiony na apache.

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

Uruchom ponownie PHP-FPM.

sudo systemctl restart php-fpm.service

Konfiguracja jest teraz zakończona. Aby kontynuować, otwórz domenę w przeglądarce internetowej, a zobaczysz stronę logowania. Następnie zaloguj się, wprowadzając wcześniej utworzone poświadczenia konta administratora.

Zostaw komentarz

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.