通过 DEB 安装
应该是最简单的方式了吧. 先在官方网站找到适配自己系统的软件包并下载. 测试时使用 Debian.
下载完成后, 在 Root 权限下运行:
dpkg -i plexmediaserver*.deb 进行安装.
如果出现软件包依赖错误, 可以尝试运行
apt install -f.
如果需要卸载:
dpkg --purge plexmediaserver 即可.
配置开机自启.
systemctl enable plexmediaserver.service && systemctl start plexmediaserver.service
至此, 安装已经全部完成, 下面是 Docker 的安装方法.
通过 Docker 安装
Plex 官方提供了镜像
pms-docker
支持 Bridge Host MacVLAN 三种网络类型.
Bridge: 在主机内部创建完整的网络并运行容器. 通过内部路由器连接到物理网络.
Host: 使用主机的 IP 地址, 使容器的网络就像是主机本身.
MacVLAN: 在网络上将容器作为一个新的虚拟主机创建.
后两者配置方式类似且较为方便, 但是默认的桥接模式适用于某些特殊网络.
Host Networking
docker run \-d \--name plex \--network=host \-e TZ="" \-e PLEX_CLAIM="" \-v :/config \-v :/transcode \-v :/data \plexinc/pms-docker
Macvlan Networking
123456789101112 [crayon-60449e40bf9fc004163832 inline="true" ]docker run \-d \--name plex \--network=physical \ #你可以改成喜欢的网络名--ip=<ipaddress> \ #指定容器的IP地址, 非必填.-e TZ="<timezone>" \-e PLEX_CLAIM="<claimtoken>" \-h <hostname> \ #设置 Docker 内的主机名.-v <path>:/config \-v <path>:/transcode \-v <path media>:/data \plexinc/pms-docker[/crayon]
Bridge Networking (最麻烦)
如果您希望 Plex Media Server 可以在公网进行访问,则必须在路由器上手动设置端口转发到指定的ADVERTISE_IP。 默认情况下,您可以转发端口32400,但如果选择使用其他端口,请确保在 Plex Media Server 的远程访问设置中进行配置。 使用这种类型的 docker 网络,Plex Media Server 实质上在两层路由器后,它无法自动设置端口转发。
1234567891011121314151617181920 [crayon-60449e40bf9ff471271953 inline="true" ]docker run \-d \--name plex \-p 32400:32400/tcp \ #管理界面端口-p 3005:3005/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 \-e TZ="<timezone>" \ #设置容器内时区, 参考<a href="https://en.wikipedia.org/wiki/List_of_tz_database_time_zones" target="_blank" rel="nofollow external noopener noreferrer" data-wpel-link="external">维基百科</a>中"TZ database name"-e PLEX_CLAIM="<claimtoken>" \-e ADVERTISE_IP="http://<hostipaddress>:32400/" \ #配置额外的IP-h <hostname> \ #设置 Docker 内的主机名.-v <path>:/config \ #储存配置文件的路径, 随着储存数量增加, 配置文件可能会变得很大.-v <path>:/transcode \ #储存临时转码文件的目录, 需要约10G.-v <path media>:/data \ #作为向容器提供媒体的范例目录. (笔者看不懂文档了.)plexinc/pms-docker[/crayon]
[在以上三种运行模式中] 可配置的其他参数:
PLEX_UID: 在容器内部的 Plex 用户ID.
PLEX_GID: 在容器内部的 Plex 用户组ID.
CHANGE_CONFIG_DIR_OWNERSHIP:
修改配置文件目录所有权为 Plex 用户, 默认为 True. 如果已设置权限, 可改为 False 以加快首次运行.
ALLOWED_NETWORKS: 允许未经验证访问服务器的 IP段. 例如: 127.0.0.1/8.
[ 如果使用桥接网络, Docker网关的IP通常为 172.16.0.1 ]
用户与组
容器外部媒体文件的访问权限作用于在容器内部的 Plex 服务器.
但是 Plex 作为容器内部创建的用户, 可能不存在于容器外部.
如果想让 Plex 以和当前用户(外部) 相同的权限运行. 可以这么做:
运行
id `whoami`, 得到的回显像这样:
uid=1001(myuser) gid=1001(myuser) groups=1001(myuser)
将 PLEX_UID 和 PLEX_GID 设置成与你本地用户相同的即可.
配置目录
在 Docker 内部, 数据库被储藏于 config 目录下的
Library/Application Support/Plex Media Server
如果你想把通过其他方式安装的数据库迁移到这里, 可以先参考官方文档来找到数据库目录.
若配置文件被存在这里
/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/, 配置目录将是
/var/lib/plexmediaserver.
如果配置目录不包含
Library/Application Support/Plex Media Server/ 或者文件夹
Library 内有与 Plex 无关的数据. 那你应该:
- 创建新目录来储存配日志文件
- 在配置文件目录中, 创建文件夹 Library/Application Support
- 把
Plex Media Server 复制到
Library/Application Support
注意: Plex 会获取配置文件目录的所有权, 所以目录中不应该有你认为它不该获得权限的文件.
控制方法
- 启动容器 docker start plex
- 停止容器 docker stop plex
- 进入运行中的容器 docker exec -it plex /bin/bash
- 实时查看脚本日志 docker logs -f plex
- 重启并升级到最新版 docker restart plex
官方Docker 文档地址: https://hub.docker.com/r/plexinc/pms-docker
文章评论