Centos7 使用Docker安装Plex媒体播放器

2023年 5月 4日 15.7k 0

Plex介绍

1651601262368.png
Plex是一整套完整的解决方案(Server + Client),Plex应用支持众多平台和设备,比如Android TV、Apple TV、智能电视等使用流媒体传输的设备;Android、iOS的移动设备;也支持win和macOS系统的电脑;支持部分Home Accessories智能设备;甚至支持PlayStation、NVIDA SHIELD、Xbox One等游戏主机。服务器端用于管理各种媒体(电影,剧集,照片,音乐,家庭视频),客户端用于解决播放(有Mac,PC,iOS,Android,XBox,PS,各种TV,树莓派等)用户可以通过在电脑或者NAS上安装Plex Media Server,使用 iPad, iPhone 或 安卓手机、机顶盒浏览以及播放各类多媒体(视频,相片以及音乐)。除此之外,还可以选择在线观看。
优点:

  1. 配置简单
  2. 界面和操作美观,它能自动加载NAS上的电影、电视剧的影视信息,并以照片墙的形式展现出来;
  3. 可以远程播放,局域网或公网都可观看和管理,甚至有网页播放器,并且你能非常轻松的将你希望分享的媒体内容,分享给你的家人或者朋友;
  4. 只需要在服务端配置一份媒体库,所有终端都可使用;
  5. 终端解码能力不够的话,自动转为服务器端解码。

缺点:

  1. 不支持蓝光原盘;
  2. 移动客户端收费

环境信息

硬件为esxi服务器
1651604573076.png
操作系统

[root@ops ~]# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core) 
[root@ops ~]# uname -r
3.10.0-693.el7.x86_64

挂载存储

首先我本地视频在群晖PT NAS中,本地运行Plex为我esxi服务器。所以我们需要通过挂载的方式将群晖nas中的影视文件挂载到我们的Docker或者是Centos7中

群晖NAS创建nfs共享文件夹提供Linux使用

新闻联播老司机

  • 22年2月19日
  • 喜欢:0
  • 浏览:2.7k
  • [root@ops ~]# showmount -e 192.168.31.199
    Export list for 192.168.31.199:
    /volume1/downloads *
    [root@ops ~]# 
    [root@ops ~]# 
    [root@ops ~]# mkdir /data/plex -p
    [root@ops ~]# mount -t nfs 192.168.31.199:/volume1/downloads /data/plex
    [root@ops ~]# df -h
    Filesystem                         Size  Used Avail Use% Mounted on
    /dev/sda3                           50G   30G   21G  60% /
    devtmpfs                           7.8G     0  7.8G   0% /dev
    tmpfs                              7.8G  4.0K  7.8G   1% /dev/shm
    tmpfs                              7.8G   33M  7.8G   1% /run
    tmpfs                              7.8G     0  7.8G   0% /sys/fs/cgroup
    /dev/sda2                          197M  113M   85M  58% /boot
    tmpfs                              1.6G     0  1.6G   0% /run/user/1000
    192.168.31.199:/volume1/downloads   14T  9.4T  4.7T  67% /data/plex
    
    #此时我们已经挂载完毕,接下来可以安装docker

    Docker 安装

    docker安装我们直接参考官方文档安装https://docs.docker.com/engine/install/centos/

    #设置存储库
    #安装yum-utils包(提供yum-config-manager 实用程序)并设置稳定的存储库。
    yum install -y yum-utils
    yum-config-manager 
        --add-repo 
        https://download.docker.com/linux/centos/docker-ce.repo
    
    安装 Docker引擎
    安装最新版本的 Docker Engine、containerd 和 Docker Compose 或进入下一步安装特定版本:
    
    yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

    配置docker的启动参数使用systemd,使用systemd是官方的建议,详见 https://kubernetes.io/docs/setup/cri/

    mkdir -p /etc/docker/
    cat>/etc/docker/daemon.json<<EOF
    {
      "exec-opts": ["native.cgroupdriver=systemd"],
      "registry-mirrors": [
          "https://fz5yth0r.mirror.aliyuncs.com",
          "https://dockerhub.mirrors.nwafu.edu.cn/",
          "https://mirror.ccs.tencentyun.com",
          "https://docker.mirrors.ustc.edu.cn/",
          "https://reg-mirror.qiniu.com",
          "http://hub-mirror.c.163.com/",
          "https://registry.docker-cn.com"
      ],
      "storage-driver": "overlay2",
      "storage-opts": [
        "overlay2.override_kernel_check=true"
      ],
      "log-driver": "json-file",
      "log-opts": {
        "max-size": "100m",
        "max-file": "3"
      }
    }
    EOF

    启动docker

    systemctl enable --now docker

    Docker 安装Plex

    下载Plex镜像

    docker pull plexinc/pms-docker
    
    #本步骤可以省略

    创建本机媒体资源目录与docker plex共享

    mkdir -p /data/plex/plex/config
    mkdir -p /data/plex/plex/transcode
    mkdir -p /data/plex/plex/data
    mkdir -p /data/plex/plex/video
    mkdir -p /data/plex/plex/photo
    mkdir -p /data/plex/plex/music

    获取索取码
    https://www.plex.tv/zh/claim/
    1651602528929.png
    启动容器,注意替换相关目录

    docker run 
    -d 
    --name plex 
    --network=host 
    --restart=always 
    -e TZ="Asia/Shanghai" 
    -e PLEX_CLAIM="claim-Tps5w7om4yYev2GN-UiF" 
    -e PUID=1000 
    -e PGID=1000 
    -v /data/plex/config:/config 
    -v /data/plex/transcode:/transcode 
    -v /data/plex/data:/data 
    -v /data/plex/video:/video 
    -v /data/plex/photo:/photo 
    -v /data/plex/music:/music 
    --device=/dev/dri:/dev/dri 
    plexinc/pms-docker
    
    #PLEX_CLAIM后面为索取码,注意修改路径

    1651602727007.png
    当我们访问docker服务器:32400端口,就可以进入到下面的页面,我这里有账号就直接登陆了1651602981192.png

    Plex 配置

    登录后我们开始配置目录
    1651603030492.png
    我们可以添加一个媒体资料库1651603103289.png
    媒体资料库目前分为2个类型

  • 电影
  • 剧集
  • 我们先添加电影
    1651603155652.png
    下一步添加目录1651603172674.png
    选择电影目录
    1651603252522.png
    这里还可以添加其它分类
    1651603235690.png
    添加完成1651603263403.png
    拷贝电影
    目前我们服务器的路径为/data/plex/plex/data也就是plex会查看这个目录下的电影文件,我们从其它目录拷贝几个过来查看

    可以将/data/plex/plex/data修改为/data,这样默认情况下/data下所有的电影都可以加载到

    Linux上需要注意字符集
    拷贝一个电影文件

    [root@ops data]# cp -r /data/plex/Horror Noire A History Of Black Horror 2019 1080p Blu-ray Remux AVC DTS-HD MA 5.1-HDT.mkv .
    [root@ops data]# ls
    Horror Noire A History Of Black Horror 2019 1080p Blu-ray Remux AVC DTS-HD MA 5.1-HDT.mkv
    [root@ops data]# ls -lh
    total 15G
    -rwxr-xr-x 1 root root 15G May  4 02:55 Horror Noire A History Of Black Horror 2019 1080p Blu-ray Remux AVC DTS-HD MA 5.1-HDT.mkv
    [root@ops data]# pwd
    /data/plex/plex/data

    点击扫描资料库 (等待加载电影)1651604199248.png
    进入电影文件,就可以看到加载好的电影1651604226894.png

    Plex硬解

    需要登陆docker命令行,删除iHD_drv_video.so文件

    docker exec -it plex /bin/bash
    rm /usr/lib/plexmediaserver/lib/dri/iHD_drv_video.so
    exit
    
    #重启plex
    docker restart plex

    形成这问题的缘由是Intel i965的驱动兼容题目,所以不管你的是Debian还是Ubuntu或是Centos系统,道理都是删除iHD_drv_video.so使驱动回滚,这个问题处理计划最早是由Plex论坛gluesniffined提出的,感激挖井人。
    Plex硬解解码需要plex会员才可以使用,点击转码器-->开启硬解转码-->保存更改
    1651604308402.png

    问题

    如果我们docker出现无法访问的情况,可以通过下面的命令重启解决

    [root@ops data]# iptables -F
    [root@ops data]# iptables -X
    [root@ops data]# systemctl restart docker

    相关文章:

    1. Docker 安装Grafana 修改配置文件开启匿名登陆
    2. 群晖NAS 安装RSS阅读器
    3. 群晖SSD高速缓存设置教程 添加SSD固态硬盘作为缓存盘
    4. Docker搭建Awesome ttrss_Tiny Tiny RSS

    相关文章

    KubeSphere 部署向量数据库 Milvus 实战指南
    探索 Kubernetes 持久化存储之 Longhorn 初窥门径
    征服 Docker 镜像访问限制!KubeSphere v3.4.1 成功部署全攻略
    那些年在 Terraform 上吃到的糖和踩过的坑
    无需 Kubernetes 测试 Kubernetes 网络实现
    Kubernetes v1.31 中的移除和主要变更

    发布评论