GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Menginstal Server Media Plex di CentOS 8

Plex adalah server media gratis, sumber terbuka, dan berfitur lengkap yang memungkinkan Anda melakukan streaming file foto, video, dan audio di PC, tablet, ponsel dari mana saja di seluruh dunia. Plex mendukung sebagian besar sistem operasi termasuk, Linux, Windows, Mac, dan FreeBSD. Plex juga mendukung beberapa plugin yang memungkinkan Anda menonton konten dari Comedy Central dan MTV.

Plex adalah sistem pemutar media klien-server. Anda cukup menginstal server Plex di server tempat Anda menyimpan media, lalu menginstal aplikasi Plex di Ponsel, Tablet, atau perangkat lain untuk mengakses media Anda melalui internet.

Fitur Mendukung banyak pengguna. Tampilkan rekomendasi Film/Acara TV. Buat daftar putar untuk musik dan film favorit Anda. Sinkronkan dan akses file media untuk penggunaan offline. Kontrol orang tua memungkinkan Anda untuk menginstal aplikasi Plex pada perangkat anak-anak dan membatasi mereka untuk menonton konten tertentu saja. Kemampuan untuk mengalirkan saluran televisi lokal ke perangkat Anda dan menonton siaran langsung.

Dalam tutorial ini, kami akan menunjukkan cara menginstal Plex Media Server pada sistem CentOS 8 dengan Nginx sebagai reverse proxy.

Prasyarat

  • Server yang menjalankan CentOS 8 dengan RAM minimal 2 GB.
  • Nama domain yang valid ditunjukkan dengan IP server Anda.
  • Kata sandi root dikonfigurasi di server Anda.

Perbarui Sistem

Pertama, disarankan untuk memperbarui server Anda dengan versi terbaru. Anda dapat memperbaruinya menggunakan perintah berikut:

dnf update -y

Setelah server Anda diperbarui, mulai ulang untuk menerapkan perubahan.

Instal Server Media Plex

Secara default, paket server media Plex tidak tersedia di repositori default CentOS 8. Jadi, Anda perlu membuat repositori untuk server media Plex. Anda dapat membuatnya dengan perintah berikut:

nano /etc/yum.repos.d/plex.repo

Tambahkan baris berikut:

[Plex]
name=Plex
baseurl=https://downloads.plex.tv/repo/rpm/$basearch/
enabled=1
gpgkey=https://downloads.plex.tv/plex-keys/PlexSign.key
gpgcheck=1

Simpan dan tutup file setelah Anda selesai. Kemudian instal server media Plex menggunakan perintah berikut:

dnf install plexmediaserver -y

Setelah instalasi selesai, mulai layanan media Plex dan aktifkan untuk memulai setelah sistem reboot dengan perintah berikut:

systemctl enable plexmediaserver
systemctl start plexmediaserver

Anda juga dapat memverifikasi status server media Plex dengan perintah berikut:

systemctl status plexmediaserver

Anda akan melihat output berikut:

? plexmediaserver.service - Plex Media Server
   Loaded: loaded (/usr/lib/systemd/system/plexmediaserver.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2020-01-06 02:45:40 EST; 41s ago
 Main PID: 1009 (Plex Media Serv)
    Tasks: 113 (limit: 12552)
   Memory: 268.1M
   CGroup: /system.slice/plexmediaserver.service
           ??1009 /usr/lib/plexmediaserver/Plex Media Server
           ??1033 Plex Plug-in [com.plexapp.system] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents/Resources/>
           ??1077 /usr/lib/plexmediaserver/Plex Tuner Service /usr/lib/plexmediaserver/Resources/Tuner/Private /usr/lib/plexmediaserver/Resour>
           ??1246 Plex Plug-in [org.musicbrainz.agents.music] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents/>
           ??1356 Plex Plug-in [com.plexapp.agents.plexthememusic] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Cont>
           ??1364 Plex Plug-in [com.plexapp.agents.themoviedb] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents>
           ??1365 Plex Plug-in [tv.plex.agents.music] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents/Resource>
           ??1389 Plex Plug-in [com.plexapp.agents.thetvdb] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents/Re>
           ??1450 Plex Plug-in [com.plexapp.agents.imdb] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents/Resou>

Jan 06 02:45:40 plex systemd[1]: Starting Plex Media Server...
Jan 06 02:45:40 plex systemd[1]: Started Plex Media Server.

Pada titik ini, server media Plex diinstal dan dijalankan. Sekarang Anda dapat melanjutkan ke langkah berikutnya.

Konfigurasi Firewall dan SELinux untuk Plex Media Server

Selanjutnya, Anda perlu mengonfigurasi firewalld untuk mengizinkan port khusus server media Plex. Anda dapat melakukannya dengan menjalankan perintah berikut:

firewall-cmd --zone=public --add-port=32400/tcp --permanent
firewall-cmd --zone=public --add-port=32469/tcp --permanent
firewall-cmd --zone=public --add-port=8324/tcp --permanent
firewall-cmd --zone=public --add-port=3005/tcp --permanent
firewall-cmd --zone=public --add-port=32412/udp --permanent
firewall-cmd --zone=public --add-port=32413/udp --permanent
firewall-cmd --zone=public --add-port=32414/udp --permanent
firewall-cmd --zone=public --add-port=32410/udp --permanent
firewall-cmd --zone=public --add-port=1900/udp --permanent
firewall-cmd --zone=public --add-port=5353/udp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent

Selanjutnya, muat ulang layanan firewalld untuk menerapkan perubahan:

firewall-cmd --reload

Secara default, SELinux diaktifkan di server CentOS 8. Jadi, Anda perlu mengonfigurasi SELinux untuk mengakses Server Media Plex melalui internet. Anda dapat mengkonfigurasi SELinux menggunakan perintah berikut:

setsebool httpd_can_network_connect on -P

Pada titik ini, server media Plex dapat diakses melalui internet. Sekarang Anda dapat melanjutkan ke langkah berikutnya.

Akses Server Media Plex

Anda sekarang dapat mengakses server media Plex menggunakan URL http://your-server-ip:32400. Anda akan melihat halaman berikut:

Selanjutnya, Anda harus mendaftar dengan alamat email yang valid untuk menggunakan layanan ini. Setelah berhasil mendaftar. Anda akan diarahkan ke dasbor server media Plex seperti yang ditunjukkan di bawah ini:

Siapkan Nginx sebagai Proxy Terbalik

Selanjutnya, Anda perlu menyiapkan Nginx sebagai proxy terbalik sehingga Anda dapat mengaksesnya dengan nama Domain tanpa memberikan alamat IP dan nomor port.

Untuk melakukannya, pertama-tama instal server web Nginx dengan perintah berikut:

dnf install nginx

Setelah instalasi selesai, mulai layanan Nginx dan aktifkan untuk memulai setelah sistem reboot dengan perintah berikut:

systemctl start nginx
systemctl enable nginx

Selanjutnya, buat file konfigurasi virtual host Nginx untuk Plex menggunakan perintah berikut:

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

Tambahkan baris berikut:

upstream plex_backend {
        server 127.0.0.1:32400;
        keepalive 32;
}

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

        send_timeout 100m; #Some players don't reopen a socket and playback stops totally instead of resuming after an extended pause (e.g. Ch$

       	#Plex has A LOT of javascript, xml and html. This helps a lot, but if it causes playback issues with devices turn it off. (Haven't enc$
        gzip on;
        gzip_vary on;
        gzip_min_length 1000;
        gzip_proxied any;
        gzip_types text/plain text/css text/xml application/xml text/javascript application/x-javascript image/svg+xml;
        gzip_disable "MSIE [1-6]\.";

       	#Nginx default client_max_body_size is 1MB, which breaks Camera Upload feature from the phones.
       	#Increasing the limit fixes the issue. Anyhow, if 4K videos are expected to be uploaded, the size might need to be increased even more
        client_max_body_size 100M;

       	#Forward real ip and host to Plex
        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 X-Forwarded-Proto $scheme;
        proxy_set_header Sec-WebSocket-Extensions $http_sec_websocket_extensions;
        proxy_set_header Sec-WebSocket-Key $http_sec_websocket_key;
        proxy_set_header Sec-WebSocket-Version $http_sec_websocket_version;
       	#Websockets
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";

       	#Buffering off send to the client as soon as the data is received from Plex.
        proxy_redirect off;
        proxy_buffering off;

        location / {
                proxy_pass http://plex_backend;
        }
}

Simpan dan tutup file setelah Anda selesai. Selanjutnya, Anda perlu menentukan ukuran ember hash server Nginx. Anda dapat melakukannya dengan mengedit file konfigurasi Nginx:

nano /etc/nginx/nginx.conf

Tambahkan baris berikut tepat di atas baris terakhir:

server_names_hash_bucket_size 64;

Simpan dan tutup file setelah Anda selesai. Kemudian, periksa Nginx apakah ada kesalahan sintaks dengan perintah berikut:

nginx -t

Anda akan melihat output berikut:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Terakhir, mulai ulang layanan Nginx untuk menerapkan perubahan.

systemctl restart nginx

Untuk memeriksa status layanan Nginx, jalankan perintah berikut:

systemctl status nginx

Jika semuanya baik-baik saja, Anda akan mendapatkan output berikut:

? nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/nginx.service.d
           ??php-fpm.conf
   Active: active (running) since Thu 2020-01-09 05:17:27 EST; 48s ago
  Process: 1230 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
  Process: 1229 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
  Process: 1227 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
 Main PID: 1232 (nginx)
    Tasks: 2 (limit: 5060)
   Memory: 13.1M
   CGroup: /system.slice/nginx.service
           ??1232 nginx: master process /usr/sbin/nginx
           ??1233 nginx: worker process

Jan 09 05:17:25 centos8 systemd[1]: Starting The nginx HTTP and reverse proxy server...
Jan 09 05:17:27 centos8 nginx[1229]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
Jan 09 05:17:27 centos8 nginx[1229]: nginx: configuration file /etc/nginx/nginx.conf test is successful

Sekarang Anda dapat mengakses server media Plex Anda menggunakan URL http://plex.example.com.

Kesimpulan

Selamat! Anda telah berhasil menginstal server media Plex pada CentOS 8 dengan Nginx sebagai proxy terbalik. Anda sekarang dapat menjelajahi server media Plex untuk opsi lainnya dan menyiapkan perpustakaan media Anda sendiri. Kemudian, Anda dapat menginstal aplikasi Plex dari play store ponsel Anda dan mengakses media Anda. Anda juga dapat mengizinkan teman dan keluarga untuk mengakses Foto, Musik, dan Film Anda dari browser web atau aplikasi Plex. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.


Cent OS
  1. Cara Menginstal Server Media Plex di Ubuntu 20.04

  2. Cara Menginstal Server Media Plex di Ubuntu 18.04

  3. Cara Menginstal Server Media Plex di CentOS 7

  1. Cara Menginstal Server Minecraft di CentOS 7

  2. Cara Menginstal Nginx di CentOS 8

  3. Cara Menginstal PostgreSQL di CentOS 8

  1. Cara Menginstal MariaDB di CentOS 8

  2. Cara Menginstal Server Media Plex di Debian 9

  3. Cara Menginstal Server Media Plex di CentOS 7