媒体播放器及媒体服务器软件Plex

什么是 Plex ?

Plex 是一套媒体播放器及媒体服务器软件,让用户整理在设备上的有声书、音乐、播客、图片和视频文件,并通过流式传输至移动设备、智能电视和电子媒体播放器上。Plex 可用于 WindowsAndroidLinuxOS XFreeBSD

在接触 NAS 之前,老苏一直是用旧笔记本 + Plex 搭建自己的流媒体服务器,实现了存储+索引+转码+网页播放,对于老苏来说,Plex 就是个非常完美的影音平台,后来只是因为更偏爱开源软件没有任何限制,才转投了 Jellyfin,但其实常规使用,Plex 完全能满足老苏的需求

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 pms-docker ,选择第一个 plexinc/pms-docker,版本选择 latest

本文写作时, latest 版本对应为 1.32.8.7639-fb6452ebf

docker cli 安装

如果你熟悉命令行,可能用 docker cli 更快捷

bash 复制代码
# 新建文件夹 plex 和 子目录
mkdir -p /volume1/docker/plex/{config,data,transcode}

# 进入 plex 目录
cd /volume1/docker/plex

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name plex \
   -p 32400:32400/tcp \
   -p 8324:8324/tcp \
   -p 32469:32469/tcp \
   -p 1900:1900/udp \
   -p 32410:32410/udp \
   -p 32412:32412/udp \
   -p 32413:32413/udp \
   -p 32414:32414/udp \
   -v $(pwd)/config:/config \
   -v $(pwd)/transcode:/transcode \
   -v $(pwd)/data:/data \
   -e TZ=Asia/Shanghai \
   -e PLEX_CLAIM="<claimToken>" \
   -e ADVERTISE_IP="http://<hostIPAddress>:32400/" \
   -h <HOSTNAME> \
   plexinc/pms-docker

# 示例
docker run -d \
   --restart unless-stopped \
   --name plex \
   -p 32400:32400/tcp \
   -p 8324:8324/tcp \
   -p 32469:32469/tcp \
   -p 1901:1900/udp \
   -p 32410:32410/udp \
   -p 32412:32412/udp \
   -p 32413:32413/udp \
   -p 32414:32414/udp \
   -v $(pwd)/config:/config \
   -v $(pwd)/transcode:/transcode \
   -v $(pwd)/data:/data \
   -e TZ=Asia/Shanghai \
   -e PLEX_CLAIM="claim-xxxxxxxxxxxxxxxxxxxx" \
   -e ADVERTISE_IP="http://192.168.0.197:32400/" \
   -h ds3617xs \
   plexinc/pms-docker

文件夹 装载路径 说明
docker/plex/config /config 存储其配置数据
docker/plex/data /data 存储媒体数据
docker/plex/transcode /transcode 转码临时文件

端口

本地端口不冲突就行,不确定的话可以用命令查一下

bash 复制代码
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口 协议
32400 32400 tcp
8324 8324 tcp
32469 32469 tcp
1901 1900 udp
32410 32410 udp
32412 32412 udp
32413 32413 udp
32414 32414 udp

其中 1900 被群晖自带的 UPnP 协议守护进程 minissdpd 占用了,所以必须要改,其他的请根据自己的情况修改

环境变量

  • TZ:容器内的时区设置,国内用户可以设为 Asia/Shanghai
  • PLEX_CLAIM:可以在线获取,有效期只有 4 分钟,建议拉取镜像之后再获取,地址:https://www.plex.tv/claim

如果还没有 plex 账号,需要先注册一个;

  • ADVERTISE_IP:如果您希望您的 Plex 媒体服务器可以在家庭网络之外访问,则必须在路由器上手动设置端口转发以转发到上面,ADVERTISE_IP指定的端口。默认情况下,您可以转发端口 32400,但如果您选择使用其他外部端口,请务必在 Plex 媒体服务器的Remote Access设置中进行配置。对于这种类型的 Docker 网络,Plex 媒体服务器本质上位于两个路由器后面,并且它无法自行自动设置端口转发

例如:http://192.168.0.197:32400/,其中 192.168.0.197 为老苏群晖主机的 IP

其他参数

  • -h <HOSTNAME>:设置 docker 容器内的主机名。

docker-compose 安装

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

yaml 复制代码
version: '3'

services:
  plex:
    image: plexinc/pms-docker
    container_name: plex
    restart: unless-stopped
    ports:
      - 32400:32400/tcp
      - 8324:8324/tcp
      - 32469:32469/tcp
      - 1901:1900/udp
      - 32410:32410/udp
      - 32412:32412/udp
      - 32413:32413/udp
      - 32414:32414/udp
    environment:
      - TZ=Asia/Shanghai
      - PLEX_CLAIM=<claimToken>
      - ADVERTISE_IP=http://<hostIPAddress>:32400/
    hostname: <hostname>
    volumes:
      - ./config:/config
      - ./transcode:/transcode
      - ./data:/data

然后执行下面的命令

bash 复制代码
# 新建文件夹 plex 和 子目录
mkdir -p /volume1/docker/plex/{config,data,transcode}

# 进入 plex 目录
cd /volume1/docker/plex

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:32400 就能看到登录界面

登录成功后

可以同步不同端的观看状态

起个名字

添加资料库

选择类型

例如:电影

选择目录,不管容器外的路径是什么,这里是容器内的路径,所以选择 /data

高级中设置刮削

现在可以开始使用了

先扫描一下电影库

刮削基本上没问题

参考文档

plexinc/pms-docker: Plex Media Server Docker repo, for all your PMS docker needs.

地址:https://github.com/plexinc/pms-docker
Stream Movies & TV Shows | Plex

地址:https://www.plex.tv/zh/

相关推荐
Jay_273 小时前
python项目如何创建docker环境
开发语言·python·docker
---wzy---3 小时前
docker生命周期
java·docker·容器
@t.t.4 小时前
使用Swarm工具搭建docker集群
docker·微服务·容器
局外人LZ6 小时前
Docker轻松搭建Neo4j+APOC环境
docker·容器·neo4j
大数据0015 小时前
Docker慢慢学
mysql·docker·kafka·n8n
唐可盐15 小时前
解决docker运行zentao 报错:ln: failed to create symbolic link ‘/opt/zbox/tmp/mysq
运维·docker·容器
泯泷20 小时前
编写 Dockerfile:从入门到精通
后端·docker·容器
方渐鸿1 天前
【2025】使用docker compose一键部署项目到服务器(4)
java·docker·运维开发·持续部署
HalukiSan1 天前
Docker_Desktop开启k8s
docker·容器
毒爪的小新1 天前
Docker基础命令
linux·运维·docker·容器·centos