1. 準備作業#
- サーバーには Docker が必要です
- Docker Compose を実行できる必要があります
- Plex アカウント
2. インストールガイド#
2.1 関連ディレクトリの作成#
mkdir -p 'カスタムデータディレクトリ'/plex/config # Plexの設定ファイルディレクトリ
mkdir -p 'カスタムデータディレクトリ'/plex/transcode # Plexのトランスコードファイルディレクトリ
mkdir -p 'カスタムデータディレクトリ'/plex/data # Plexのデータファイルディレクトリ
例:
mkdir -p /usr/plex/config
2.2 Plex トークンの取得#
サーバーを Plex アカウントにログインするために、https://www.plex.tv/claim にアクセスしてトークンを取得し、トークン文字列を以下の docker-compose ファイルの該当箇所にコピー&ペーストします。必要な操作です。
2.3 docker-compose ファイルの作成と実行#
vim /usr/plex/docker-compose.yml
---
version: '3'
services:
plex:
image: plexinc/pms-docker:latest # 最新バージョンをインストール
hostname: PlexServer # カスタムホスト名
restart: always # 再起動ポリシーを設定
volumes:
- "'カスタムデータディレクトリ'/plex/config:/config" # Plexの設定ファイルディレクトリ
- "'カスタムデータディレクトリ'/plex/transcode:/transcode" # Plexのトランスコードファイルディレクトリ
- "'カスタムデータディレクトリ'/plex/data:/data" # Plexのデータファイルディレクトリ
- "'ビデオファイル保存ディレクトリ':/video"
ports:
- 32400:32400/tcp # Plexウェブページアクセスポート、例えば8080ポート経由でアクセスする場合は8080:32400に変更します
- 3005:3005/tcp # Plex Companion
- 8324:8324/tcp # Plex Companionを介してRokuでPlexを制御するためのポート
- 32469:32469/tcp # Plex DLNAサーバーへのアクセス
- 32468:1900/udp # Plex DLNAサーバーへのアクセス
- 32410:32410/udp # 現在のGDMネットワーク検出
- 32412:32412/udp # 現在のGDMネットワーク検出
- 32413:32413/udp # 現在のGDMネットワーク検出
- 32414:32414/udp # 現在のGDMネットワーク検出
# devices: # FFmpegとハードウェアデバイスを共有する(オプション)
# - "/dev/dri:/dev/dri" # Intel QSV
# - "/dev/nvidia0:/dev/nvidia0" # Nvidia CUDA
# - "/dev/nvidiactl:/dev/nvidiactl"
# - "/dev/nvidia-modeset:/dev/nvidia-modeset"
# - "/dev/nvidia-nvswitchctl:/dev/nvidia-nvswitchctl"
# - "/dev/nvidia-uvm:/dev/nvidia-uvm"
# - "/dev/nvidia-uvm-tools:/dev/nvidia-uvm-tools"
# - "/dev/video11:/dev/video11" # Raspberry V4L2
environment:
TZ: Asia/Shanghai # コンテナ内のタイムゾーン
PLEX_UID: 0 # コンテナ内で作成されるユーザーID(理解しない場合は変更しないでください)
PLEX_GID: 0 # コンテナ内で作成されるユーザーグループID(理解しない場合は変更しないでください)
PLEX_CLAIM: claimToken # 実際のサーバーのトークンを取得するために、https://www.plex.tv/claim にアクセスしてトークンを取得します
ADVERTISE_IP: hostIPAddress:32400/ # 外部アクセスの固定IPまたはドメインを入力します。ない場合はこの行を削除できます
2.4 対応するポートの開放など#
ローカルファイアウォールまたは Alibaba Cloud などのクラウドプラットフォームのコントロールパネルのファイアウォールで、対応するポートを開放する必要があります。32400 ポートは必ず開放する必要があります。同僚は 3005 も開放しました。他のポートは開放されていません。VPS なので DLNA や GDM は必要ありません。
2.5 アクセスして結果を確認する#
ドメインを使用して Plex 管理ページにアクセスして結果を確認します
http://'ドメイン':32400
3. 関連する問題#
3.1 リモートアクセスが「間接 / リレー」になっている#
Docker を使用しているため、コンテナ内で割り当てられるネットワークカードの IP は内部ネットワークのものになります。そのため、管理画面の「サーバーに対するリモートアクセス」で、内部の IP は 172 で始まる内部ネットワークのものであり、公開される外部 IP ポートは 0 の場合があります。
「手動でポートを指定する」をクリックし、デフォルトの 32400 を入力し、申請をクリックして実行すると問題が解決します。つまり、「ネットワークの外から完全にアクセス可能」が表示されます。