Docker搭建Plex流媒体服务并播放自己本地视频

news2024/12/28 18:29:38

Docker搭建Plex流媒体服务

  1. 安装Docker
  2. 创建存储配置文件的目录
  3. 创建Plex容器
  4. 配置Plex
  5. 设置媒体库
  6. 访问Plex

1 介绍

Plex是一个流媒体服务器,可以轻松地将你的媒体文件库(如电影、电视节目和音乐)通过网络流式传输到各种设备上。

  • Plex 是一套媒体播放器及媒体服务器软件,提供了一整套完整的解决方案(Server + Client),支持众多平台和设备,对移动设备性能几乎没有要求,凡是能打开 web 看视频的设备,基本都能使用。 Plex支持远程访问,云同步及好友共享库功能,尤其适合家庭影音库、异地恋情侣观影。

其他类似软件:

  • emby(收费)
  • Jellyfin(收费)
  • elfilm(免费非开源)
  • infuse(收费)

刮削器在plex里叫做代理(agent)

2 安装部署过程

2.1 安装Docker

如果是windows或者mac可以直接安装docker desktop这个软件
官网地址:https://www.docker.com/products/docker-desktop/

如果是Linux(Ubuntu或者CentOS):
前提条件:

  • Docker可以运行在Windows、Mac、CentOS、Ubuntu等操作系统上

  • Docker支持以下的CentOS版本:

    • CentOS 7 (64-bit)
    • CentOS 6.5 (64-bit) 或更高的版本
  • 目前,CentOS 仅发行版本中的内核支持 Docker

    • Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。
    • Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。
  1. 查看系统内核

uname命令用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。

uname -r
  1. 查看已安装的CentOS版本信息
cat /etc/redhat-release

满足上面可以安装docker的条件即可安装。
docker官网:
官网:http://www.docker.com

安装手册:https://docs.docker.com/install/linux/docker-ce/centos(CE-社区版)

① 安装需要的软件包

yy -utils提供了yy-config-manager相关功能,device-mapper-persistent-data和lvm2是设备映射器驱动程序所需要的。

yum install -y yum-utils \
               device-mapper-persistent-data \
               lvm2

如果有以下报错信息:

报错:Another app is currently holding the yum lock; waiting for it to exit… 另一个应用程序是:PackageKit 内存:146 M RSS (497 MB VSZ) 已启动: Wed Oct 26 20:20:11 2022 - 00:07之前 状态 :运行中,进程ID:2874 Another app is currently holding the yum lock; waiting for

执行下面命令即可:

rm -f /var/run/yum.pid
② 设置docker镜像为阿里云、更新yum索引

①设置docker镜像为阿里云

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

②我们在更新或配置yum源之后,通常都会使用yum makecache 生成缓存,这个命令是将软件包信息提前在本地缓存一份,用来提高搜索安装软件的速度

yum makecache fast
③ docker安装即后续配置

①安装docker ce

yum install -y docker-ce

②启动docker

systemctl start docker

③查看docker版本

docker version

④设置docker是否开启自起

#查看服务是否自动启动(是:enabled | 否:disabled)
systemctl list-unit-files|grep docker.service 

#设置开机启动:如不是enabled可以运行如下命令设置自启动
systemctl enable docker
#重新加载服务配置
systemctl daemon-reload 

#如果希望不进行自启动,运行如下命令设置
systemctl disable docker
#重新加载服务配置
systemctl daemon-reload 

⑤如果我们想卸载docker,执行以下命令

systemctl stop docker 
yum remove -y docker-ce
rm -rf /var/lib/docker

拓展:有时候,我们需要不同的服务器部署相同的镜像,这个时候我们可以使用docker export / import来对镜像进行导入导出

导出:

docker export f299f501774c > rabbit.tar

导入:

docker import - myrabbit < rabbit.tar

2.2 创建配置文件目录

在你的系统上创建一个目录,用于存储Plex的配置文件。你可以使用以下命令创建目录:

# 创建plex配置文件
mkdir -p /Users/ziyi/plex-config
# 创建自己本地存放媒体的文件夹
mkdir -p /Users/ziyi/media

2.3 docker创建plex

docker run -d \
  --name plex \
  --restart=unless-stopped \
  -p 32400:32400 \
  -v /Users/ziyi/plex-config:/config \
  -v /Users/ziyi/media:/data \
  plexinc/pms-docker

-d:在后台运行容器;
–name plex:为容器指定名称为"plex";
–restart=unless-stopped:在容器停止或重启后自动重新启动;
-p 32400:32400:将主机的32400端口映射到容器的32400端口,这是Plex的默认端口;
-v /Users/ziyi/plex-config:/config:将主机上的"plex-config"目录挂载到容器的"/config"目录,用于存储Plex的配置文件;
-v /Users/ziyi/media:/data:将主机上的"media"目录挂载到容器的"/data"目录,用于存储媒体文件。
请将上述命令中的/Users/ziyi/plex-config和/Users/ziyi/media替换为实际的目录路径。

# 查看plex是否启动成功,出现Up表明成功,否则表明失败
docker ps | grep plex

在这里插入图片描述

2.4 配置并访问

①注册或登录plex账号

现在,你可以通过访问 http://localhost:32400/web 来访问Plex的Web界面。首次访问时,你需要登录或创建一个Plex账号。

  • 如果没有账号,可以通过邮箱注册

在这里插入图片描述

登录后,按照界面上的指引,完成Plex的初始设置。你可以设置服务器名称、语言、媒体库等。

一旦Plex配置完成,你可以通过"添加媒体库"选项来添加你的媒体文件夹。点击"添加媒体库"按钮,选择媒体类型(如电影、电视节目、音乐等),然后选择对应的媒体文件夹。

Plex将扫描并索引所选文件夹中的媒体文件,并在Web界面上显示它们。

✈️Plex工作原理:
在这里插入图片描述

你可以在Plex的Web界面上浏览和播放你的媒体文件,也可以使用Plex客户端应用程序在各种设备上观看。

②访问

现在,你可以通过浏览器或Plex客户端访问Plex服务器。在浏览器中访问 http://localhost:32400/web ,或使用Plex客户端应用程序。

  • 主页会有Plex自己推荐的视频

在这里插入图片描述

在这里插入图片描述

③添加自己本地资料库(可选)

如果我们想要将自己本地的视频放在plex上播放,那么我们可以通过添加资料库实现

  1. 添加资料库

点击头像 - 选择账户 - 选择管理模块下的媒体库 - 点击添加资料库

在这里插入图片描述
2. 选择对应的媒体类型和语言
在这里插入图片描述
3. 添加文件夹

指明该资料库扫描哪个文件夹下的媒体视频

  • 我本地的媒体视频等都在/Users/ziyi/media下,在开始创建docker时,我已经将/Users/ziyi/media目录绑定到了plex容器内部的/data目录,所以这里我直接选择/data
  • 创建容器时候的挂载卷参数:-v /Users/ziyi/media:/data

在这里插入图片描述

我已经添加了我本地资料库,可以点击扫描资料库,将本地视频扫描到plex中。

在这里插入图片描述
4. 回到主页,播放自己媒体库的视频
在这里插入图片描述

播放:
在这里插入图片描述

❓tips:

  • 主页上手动扫描文件
    在这里插入图片描述配置自动扫描本地媒体文件并更新
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1120687.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

信号量、互斥锁、计数信号量

大家好&#xff0c;我叫徐锦桐&#xff0c;个人博客地址为www.xujintong.com。平时记录一下学习计算机过程中获取的知识&#xff0c;还有日常折腾的经验&#xff0c;欢迎大家来访。 信号量(semaphores)一个多进程共享的非负整型全局变量。信号量常用于多进程的进程同步。 介绍 …

零基础学python:错误与异常

嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 语法错误 异常&#xff1a;大多数的异常都不会被程序处理&#xff0c;都以错误信息的形式展现在这里 &#x1f447; &#x1f447; &#x1f447; 更多精彩机密、教程&#xff0c;尽在下方&#xff0c;赶紧点击了解吧~ pyth…

【STM32】GPIO控制LED(寄存器版)

在开始之前记得先准备好环境&#xff1a; STM32F103核心板下载教程.pdf 林何/STM32F103C8 - 码云 - 开源中国 (gitee.com) 一、STM32的GPIO模块数据手册详解 每个GPIO端口对应16个引脚&#xff0c;例GPIOA&#xff08;PA0~PA15&#xff09;内核cpu就可以通过APB2总线对寄存器…

电路电子技术3 电位的计算受控源在电路分析中的作用

1.计算电压 思路&#xff1a;注意到这个串联电路&#xff0c;有两个电压源&#xff0c;所以我们首先可以将两个电压源串联等效为一个电压源。 即&#xff1a; 故可得答案选B. 2.计算点位 思路&#xff1a;题目说明了B点开路&#xff0c;所以没有流过电阻R的电流&#xff0c;…

光学配件简介

光学配件简介 延长管介绍 延长管&#xff0c;是加在镜头和相机之间的一根通心的环状管&#xff0c;但里面没有任何光学部件&#xff0c;也没有放大作用。它不会改变光圈值&#xff0c;但因为延长了镜头&#xff0c;光线会减弱。延长管可以使镜头的对焦距离缩短&#xff0c;也就…

Uniapp 酷炫钱包页面模板 直接引用

使用教程 直接引用Vue页面 即可 <template><view><TCqianbao></TCqianbao></view> </template> <script>import TCqianbao from /uni_modules/TC-qianbao/pages/index.vueexport default {components:{TCqianbao},} </script&…

【斗破年番】彩鳞送老公新挂,薰儿霸气回归,萧炎招揽古河,邀请美杜莎战魂殿

【侵权联系删除】【文/郑尔巴金】 斗破苍穹年番动画已经更新了&#xff0c;萧炎与美杜莎女王一起回娘家&#xff0c;并且也与小医仙制定了同盟计划&#xff0c;准备对金雁宗与慕兰谷斩草除根。从官方公布的第69集预告来看&#xff0c;慕兰三老与雁落天已经陨落&#xff0c;美杜…

Warning: [antd: Switch] `value` is not a valid prop, do you mean `checked`?

解决方案&#xff1a; <Form.Item label"更多设置" name"moreSetting" valuePropName"checked"><Switch onChange{handleMoreSetting} /></Form.Item> 参考链接&#xff1a; https://chat.xutongbao.top/

医药保健品经营小程序商城的作用是什么

互联网经济下&#xff0c;线上线下商家难以生存&#xff0c;自营平台成为各行业商家的选择&#xff0c;摆脱平台限制及线下门店地域的限制&#xff0c;多渠道线上获客引流转化营销、留存复购裂变等&#xff0c;更利于直接触达消费者&#xff0c;无其它商家夺流及坑位费、流量费…

最详细STM32,cubeMX 定时器

这篇文章将详细介绍 STM32,cubeMX 定时器的配置和使用。 文章目录 前言一、定时器基础知识二、cubeMX 配置三、定时时长四、自动生成代码讲解五、实验程序总结 前言 实验开发板&#xff1a;STM32F103C8T6。所需软件&#xff1a;keil5 &#xff0c; cubeMX 。实验目的&#xff…

探索未来的视觉革命:卷积神经网络的崭新时代(二)

&#x1f497;&#x1f497;&#x1f497;欢迎来到我的博客&#xff0c;你将找到有关如何使用技术解决问题的文章&#xff0c;也会找到某个技术的学习路线。无论你是何种职业&#xff0c;我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章&#xff0c;也欢…

自主武器系统对伦理和法律的挑战

【第十届北京香山论坛是中国军事科学学会、中国国际战略学会联合主办的论坛&#xff0c;将于2023年10月29日至31日在北京举行。本次论坛的主题是“共同安全、持久和平”&#xff0c;聚焦全球安全倡议重点合作方向&#xff0c;为各方共议安全难题、求解安全之策、促进安全合作提…

Leetcode1971. 寻找图中是否存在路径

Every day a Leetcode 题目来源&#xff1a;1971. 寻找图中是否存在路径 解法1&#xff1a;并查集 并查集介绍&#xff1a;并查集详解 代码&#xff1a; /** lc appleetcode.cn id1971 langcpp** [1971] 寻找图中是否存在路径*/// lc codestart class UnionFind {vector&…

Node-RED系列教程-27node-red操作邮件节点

提前注册好一个163邮箱: 安装以下节点: 演示发送邮件的功能

ESXI6.5安装教程

设置从IPMI Virtual Disk 3000启动&#xff0c;出现如下界面&#xff1a; 默认选择第一项&#xff0c;回车安装 安装程序正在检测服务器硬件信息&#xff0c;如果不满足系统安装条件会跳出错误提示。 检测完成之后会出现下面界面 回车 按F11 这里列出了服务器硬盘信息&#…

【算法|动态规划No.29】leetcode132. 分割回文串 II

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【LeetCode】 &#x1f354;本专栏旨在提高自己算法能力的同时&#xff0c;记录一下自己的学习过程&#xff0c;希望…

022-第三代软件开发-QCustomPlot核心迁移

第三代软件开发-QCustomPlot核心迁移 文章目录 第三代软件开发-QCustomPlot核心迁移项目介绍先说点GitHub CopilotQCustomPlot核心迁移QQuickPaintedItemXXX_QCustomChart 关键字&#xff1a; Qt、 Qml、 QCustomPlot、 GitHub Copilo、 关键字5 项目介绍 欢迎来到我们的 …

Leetcode—2331.计算布尔二叉树的值【简单】

2023每日刷题&#xff08;六&#xff09; Leetcode—2331.计算布尔二叉树的值 递归实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ bool evaluateTree(struct TreeNod…

计算机网络_网络层概述

4.1 网络层概述 4.1.1 一.分组转发和路由选择 网络层的主要任务就是将分组从源主机经过多个网络和多段链路传输到目的主机&#xff0c;可以将该任务划分为分组转发和路由选择两种重要的功能。 注释:A发送到B,从1端口进入. 如何得知是从2还是从3中转发出去呢?--------->这…

M4内核启动全过程(从零写代码,不用任何库,深入分析启动过程和函数调用规则)

引言 玩过stm32的小伙伴&#xff0c;应该知道&#xff0c;在使用的keil工程里面有一个start.s的启动文件&#xff08;网上关于这个启动文件的分析很多&#xff0c;本文不是讲解启动文件的文字&#xff0c;不打算具体讲解这个文件的内容&#xff09;。start.s文件是芯片复位、启…