GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal Permintaan Plex di Ubuntu 16.04, 18.04 Server

Tutorial ini akan menunjukkan kepada Anda cara menginstal Plex Requests di server Ubuntu 16.04 dan Ubuntu 18.04. Permintaan Plex adalah cara otomatis sederhana bagi pengguna untuk meminta konten baru di server media Plex Anda.

Permintaan Plex memungkinkan pengguna Anda untuk mengirimkan permintaan konten pada halaman web khusus. Versi terbaru adalah v1.21.2, dirilis pada 16 Februari 2018. Fitur Permintaan Plex adalah sebagai berikut:

  • Pengguna dapat dengan mudah mencari konten untuk diminta di TheMovieDB
  • Daftar praktis dari film dan serial TV yang diminta serta pelaporan masalah dasar
  • Otentikasi pengguna sederhana dengan sistem persetujuan baru
  • Integrasi CouchPotato untuk mengunduh film secara otomatis
  • Integrasi SickRage dan Sonarr untuk pengunduhan Serial TV otomatis
  • Notifikasi pushbullet atau pushover untuk mengikuti permintaan terbaru

Prasyarat

Untuk mengikuti tutorial ini, diasumsikan bahwa Anda telah menyiapkan server media Plex di Ubuntu 16.04 atau Ubuntu 18.04. Anda dapat membaca artikel berikut.

  • Cara menyiapkan server media Plex di Ubuntu 16.04
  • Cara menyiapkan server media Plex di Ubuntu 18.04

Untuk menjalankan Permintaan Plex, server Anda harus memiliki setidaknya 1GB RAM. 2GB disarankan untuk menjalankannya dengan lancar. Tanpa basa-basi lagi, mari instal Permintaan Plex.

Instal Permintaan Plex di Ubuntu 16.04, Server 18.04

Permintaan Plex ditulis dengan MeteorJS, yang merupakan kerangka kerja web JavaScript sumber terbuka dan gratis untuk membangun aplikasi web dan seluler. Untuk menjalankan Permintaan Plex, kita perlu menginstal MeteorJS dengan perintah berikut.

sudo apt install curl

curl https://install.meteor.com/ | sh

Kemudian buka Github dan unduh rilis terbaru.

Untuk mengunduhnya dari baris perintah, gunakan perintah berikut. Jika versi baru keluar, cukup ganti 1.12.2 dengan nomor versi baru.

wget -O plexrequests-meteor-1.21.2.zip https://codeload.github.com/lokenx/plexrequests-meteor/zip/v1.21.2

Selanjutnya, buka zip arsip.

sudo apt install unzip

unzip plexrequests-meteor-1.21.2.zip

Cd ke dalam direktori.

cd plexrequests-meteor-1.21.2/

Sekarang kita dapat menjalankan Permintaan Plex dengan perintah berikut.

meteor

Perhatikan bahwa jika server Anda tidak memiliki cukup RAM, perintah ini akan gagal dan Anda akan melihat kesalahan berikut. ENOMEM adalah singkatan dari “Error – No Memory”.

Error: spawn ENOMEM

Selain itu, Plex Requests secara default mendengarkan pada port 3000. Jika aplikasi lain menggunakan port 3000, tentukan port alternatif seperti 3002. (MongoDB mendengarkan pada port 3001.)

meteor --port 3002

Sekarang Anda dapat mengakses halaman admin Permintaan Plex di

your-server-ip:3000/admin

Jika port 3000 diblokir oleh firewall, jalankan perintah berikut untuk mengizinkan akses pada port 3000.

sudo iptables -I INPUT -p tcp --dport 3000 -j ACCEPT


Klik tautan Daftar untuk membuat akun admin.

Jalankan Permintaan Plex di latar belakang dengan SystemD

Secara default, perintah meteor berjalan di latar depan, yang berarti jika Anda keluar dari terminal, Permintaan Plex akan berhenti berjalan. Untuk menjalankannya di latar belakang, kita dapat membuat layanan SystemD. Pertama, tekan Ctrl+C untuk menghentikan proses meteor saat ini. Kemudian buat file layanan SystemD untuk Permintaan Plex dengan editor teks baris perintah seperti nano.

sudo nano /etc/systemd/system/plex-requests.service

Dalam file ini, kita perlu mengatur variabel lingkungan HOME, mengatur direktori kerja dan menentukan meteor yang akan dijalankan sebagai pengguna standar. Jadi masukkan teks berikut ke dalam file ini. Ganti teks merah yang sesuai.

[Unit]
Description=Plex Requests
After=syslog.target network.target

[Service]
Environment="HOME=/home/linuxbabe"
WorkingDirectory=/home/linuxbabe/plexrequests-meteor-1.21.2
ExecStart=/usr/local/bin/meteor
Type=simple
Restart=always
RestartSec=10
User=linuxbabe
Group=linuxbabe

[Install]
WantedBy=multi-user.target

Untuk menyimpan file di editor teks Nano, tekan Ctrl+O , lalu tekan Enter untuk mengonfirmasi. Untuk keluar, tekan Ctrl+X . Selanjutnya, kita dapat memulai layanan SystemD dengan:

sudo systemctl start plex-requests

Dan aktifkan mulai otomatis pada waktu boot sistem.

sudo systemctl enable plex-requests

Sekarang periksa statusnya:

systemctl status plex-requests

Pastikan itu berjalan. Kemudian tekan q untuk mendapatkan kembali kendali terminal.

Siapkan Nginx Reverse Proxy (Subdomain)

Untuk mengakses Permintaan Plex melalui nama domain alih-alih mengetik alamat IP dan nomor port, Anda dapat mengatur proxy terbalik dengan Nginx. Jalankan perintah berikut instal server web Nginx.

sudo apt install nginx

Kemudian buat file host virtual Nginx untuk Permintaan Plex.

sudo nano /etc/nginx/conf.d/plex-requests.conf

Masukkan baris berikut ke dalam file. Ganti requests.example.com dengan nama domain Anda sendiri. Jangan lupa untuk menetapkan A record untuk sub domain. location / {…} blok akan membuat permintaan pengalihan Nginx ke port 3000.

server {
    listen 80;
    server_name requests.example.com;

    error_log /var/log/nginx/plex-requests.error;

    location / {
          proxy_pass http://127.0.0.1:3000;
          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          #upgrade to WebSocket protocol
          proxy_set_header Upgrade $http_upgrade;
          proxy_set_header Connection "Upgrade";
    }
}

Simpan dan tutup file. Kemudian uji konfigurasi Nginx.

sudo nginx -t

Jika pengujian berhasil, muat ulang Nginx agar konfigurasi baru dapat diterapkan.

sudo systemctl reload nginx

Sekarang Permintaan Plex diletakkan di belakang Nginx dan Anda dapat mengaksesnya melalui nama domain (requests.example.com ).

Untuk mengaktifkan koneksi aman HTTPS, Anda dapat memperoleh dan menginstal sertifikat TLS/SSL gratis dari Let's Encrypt. Instal klien Let's Encrypt (certbot) dengan:

sudo apt install software-properties-common
sudo add-apt-repository ppa:certbot/certbot
sudo apt update
sudo apt install certbot python3-certbot-nginx

Kemudian jalankan perintah berikut, yang menggunakan plugin Certbot Nginx untuk mendapatkan dan menginstal sertifikat TLS secara otomatis. Ganti teks merah dengan data Anda yang sebenarnya.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email your-email-address --domain requests.example.com

Dalam beberapa detik, Anda akan melihat pesan selamat seperti di bawah ini yang berarti sertifikat berhasil diperoleh.

Refresh halaman web Permintaan Plex, Anda akan menemukan koneksi HTTP secara otomatis dialihkan ke koneksi aman HTTPS.

Menyiapkan Nginx Reverse Proxy (Subdirektori)

Jika Anda ingin Permintaan Plex dapat diakses melalui subdirektori domain Anda, buka file host virtual Nginx yang ada untuk server media Plex Anda. Milik saya bernama plex.conf .

sudo nano /etc/nginx/conf.d/plex.conf

Jika Anda mengikuti tutorial server media Plex saya sebelumnya, maka Anda sekarang harus mengaktifkan HTTPS untuk server media Plex Anda. Dan Anda hanya perlu menambahkan baris berikut ke blok server SSL (ditunjukkan dengan listen 443 ssl ).

 location ~* (/search|/admin|/requests|/packages|/sockjs|/app|/merged-stylesheets.css) {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";

 }

Dalam konfigurasi di atas, kami menetapkan bahwa jika URL permintaan diakhiri dengan /search, /admin, /requests, /packages, /sockjs, /app, atau /merged-stylesheets.css, maka beri tahu Nginx untuk mengarahkan permintaan ke port 3000. Jika URL permintaan diakhiri dengan /sockjs, akan ada beberapa permintaan WebSocket bersama dengan permintaan HTTP normal, jadi kami menambahkan dua proxy_set_header terakhir arahan untuk meningkatkan ke protokol WebSocket.

Simpan dan tutup file. Kemudian uji konfigurasi Nginx.

sudo nginx -t

Jika pengujian berhasil, muat ulang Nginx agar konfigurasi baru dapat diterapkan.

sudo systemctl reload nginx

Sekarang halaman web Permintaan Plex utama dapat diakses melalui sub-direktori.

example.com/search

Dan halaman admin dapat diakses melalui

example.com/admin

Siapkan Apache Reverse Proxy (Subdomain)

Jika Anda lebih suka Apache daripada Nginx, maka instal dengan:

sudo apt install apache2

Untuk menggunakan Apache sebagai proxy terbalik, kita perlu mengaktifkan proxy modul dan modul header.

sudo a2enmod proxy proxy_http proxy_wstunnel headers

Kemudian buat file host virtual untuk Permintaan Plex.

sudo nano /etc/apache2/sites-available/plex-requests.conf

Masukkan baris berikut ke dalam file. Ganti requests.example.com dengan nama domain Anda sendiri. Jangan lupa untuk menetapkan rekor A untuk sub domain.

<VirtualHost *:80>
    ServerName requests.example.com
    ErrorDocument 404 /404.html
    
    #HTTP Requests
    ProxyPass / http://localhost:3000/
    ProxyPassReverse / http://localhost:3000/
    
    #When protocol upgrade to Websocket is received, change the origin (protocol scheme, host and port)
    RewriteEngine on
    RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]
    RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
    RewriteRule .* ws://localhost:3000%{REQUEST_URI} [P]
</VirtualHost>

Simpan dan tutup file. Kemudian aktifkan host virtual ini.

sudo a2ensite plex-requests.conf

Mulai ulang Apache

sudo systemctl restart apache2

Sekarang Permintaan Plex diletakkan di belakang Apache dan Anda dapat mengaksesnya melalui nama domain (requests.example.com ).

Untuk mengaktifkan koneksi aman HTTPS, Anda dapat memperoleh dan menginstal sertifikat TLS/SSL gratis dari Let's Encrypt. Instal klien Let's Encrypt (certbot) dengan:

sudo apt install software-properties-common
sudo add-apt-repository ppa:certbot/certbot
sudo apt update
sudo apt install certbot python3-certbot-apache

Kemudian jalankan perintah berikut, yang menggunakan plugin Certbot Nginx untuk mendapatkan dan menginstal sertifikat TLS secara otomatis. Ganti teks merah dengan data Anda yang sebenarnya.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email your-email-address --domain requests.example.com

Dalam beberapa detik, Anda akan melihat pesan selamat seperti di bawah ini yang berarti sertifikat berhasil diperoleh.

Refresh halaman web Permintaan Plex, Anda akan menemukan koneksi HTTP secara otomatis dialihkan ke koneksi aman HTTPS.

Siapkan Apache Reverse Proxy (Subdirektori)

Jika Anda ingin Permintaan Plex dapat diakses melalui subdirektori domain Anda, buka file host virtual Apache yang ada untuk server media Plex Anda. Milik saya bernama plex-le-ssl.conf . (Perhatikan bahwa Anda perlu mengedit virtual host yang mendengarkan di 443.)

sudo nano /etc/nginx/conf.d/plex-le-ssl.conf

Jika Anda mengikuti tutorial server media Plex saya sebelumnya, maka Anda sekarang harus mengaktifkan HTTPS untuk server media Plex Anda. Dan Anda hanya perlu menambahkan baris berikut di dalam <VirtualHost *:443>...</VirtualHost> blokir.

    RewriteEngine on

    #If the requested URL is meant for Plex Requests, then redirect the request to localhost:3000
    RewriteCond %{REQUEST_URI} ^/(search|admin|requests|packages|app|sockjs|merged-stylesheets.css) [NC]
    RewriteRule .* http://localhost:3000%{REQUEST_URI} [P]

    #This is for Websocket requests.
    <Location /sockjs/>
       RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]
       RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
       RewriteRule .* ws://localhost:3000%{REQUEST_URI} [P]
    </Location>

Simpan dan tutup file. Kemudian muat ulang Apache agar perubahan diterapkan.

sudo systemctl reload apache2

Sekarang halaman web Permintaan Plex utama dapat diakses melalui sub-direktori.

example.com/search

Dan halaman admin dapat diakses melalui

example.com/admin

Kesimpulan

Saya harap tutorial ini membantu Anda menginstal Plex Requests di Ubuntu 18.04 dan 16.04. Seperti biasa, jika menurut Anda postingan ini bermanfaat, berlangganan newsletter gratis kami untuk mendapatkan lebih banyak tips dan trik. Hati-hati


Ubuntu
  1. Cara Menginstal Server Media Plex di Ubuntu 20.04

  2. Cara Menginstal Server Media Plex di Ubuntu 18.04

  3. Cara Instal Zimbra 8.6 di Server Ubuntu 14.04

  1. Cara Menginstal MySQL di Ubuntu 18.04

  2. Cara Memasang Server Minecraft di Ubuntu 18.04

  3. Cara Menginstal Nginx di Ubuntu 20.04

  1. Cara Menginstal MariaDB di Ubuntu 20.04

  2. Cara Menginstal Server VNC Di Ubuntu 14.04

  3. Instal Plex Media Server di Ubuntu 20.04