- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章docker搭建CMS点播系统带播放器功能由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
【导读】我相信这么多年,你一定看过各式各样的视频网站,不管内容怎么样,你有没有想过拥有一个属于自己的视频网站?如果想那就跟我来吧!今天这篇文章就能满足你的这个愿望.
如果你细心的话,也许不需要任何编程能力也可以完成这样愿望的.
。
正文 。
工欲善其事,必先利其器。想干什么事情,先准备好工具。同样,想搭建属于自己的视频网站,先准备一台云服务器,这个要求不过分吧?
如果感觉麻烦,或者只想本地访问,那在自己的机器上安装一个linux虚拟机也是可以的.
。
1、准备机器 。
自己新开通了一个阿里云的服务器,系统是linux的.
当然,你也可以使用腾讯云或者华为云的.
。
2、安装docker 。
。
1. 安装依赖包 。
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
执行过程:
[work@al-bj ~]$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2 Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile Resolving Dependencies --> Running transaction check ---> Package device-mapper-persistent-data.x86_64 0:0.8.5-3.el7_9.2 will be installed --> Processing Dependency: libaio.so.1(LIBAIO_0.4)(64bit) for package: device-mapper-persistent-data-0.8.5-3.el7_9.2.x86_64 --> Processing Dependency: libaio.so.1(LIBAIO_0.1)(64bit) for package: device-mapper-persistent-data-0.8.5-3.el7_9.2.x86_64 --> Processing Dependency: libaio.so.1()(64bit) for package: device-mapper-persistent-data-0.8.5-3.el7_9.2.x86_64 ---> Package lvm2.x86_64 7:2.02.187-6.el7_9.4 will be installed 。
... ... 。
。
2. 设置阿里云镜像源 。
一般国内由于某些原因,都会设置阿里云镜像源,这样可以提高安装速度.
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
执行结果:
[work@al-bj ~]$ sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo Loaded plugins: fastestmirror adding repo from: https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo grabbing file https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo repo saved to /etc/yum.repos.d/docker-ce.repo 。
。
3. 执行安装命令 。
我们使用docker免费的ce版本,安装命令如下:
sudo yum install docker-ce
执行过程:
[work@al-bj ~]$ sudo yum install docker-ce Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile docker-ce-stable | 3.5 kB 00:00:00 (1/2): docker-ce-stable/7/x86_64/primary_db | 58 kB 00:00:01 (2/2): docker-ce-stable/7/x86_64/updateinfo | 55 B 00:00:02 Resolving Dependencies --> Running transaction check ---> Package docker-ce.x86_64 3:20.10.5-3.el7 will be installed 。
... ... 。
。
4. 验证是否安装成功 。
使用如下命令可以验证docker是否安装成功了.
docker version
执行结果如果显示如下内容,则表示安装成功.
[work@al-bj ~]$ docker version Client: Docker Engine - Community Version: 20.10.5 API version: 1.41 Go version: go1.13.15 Git commit: 55c4c88 Built: Tue Mar 2 20:33:55 2021 OS/Arch: linux/amd64 Context: default Experimental: true 。
。
3、拉取镜像 。
在新机器上首次拉取镜像的时候,可能会出现如下报错信息:
[work@al-bj ~]$ docker pull moerats/express-ffmpeg Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
上述问题的解决方法是重启docker服务,执行命令如下:
sudo service docker start
docker服务重启,再次执行上述命令,拉取镜像成功,命令执行结果如下:
[work@al-bj ~]$ 。
Unable to find image 'moerats/express-ffmpeg:latest' locally 。
latest: Pulling from moerats/express-ffmpeg 。
9cc2ad81d40d: Pull complete 。
e6cb98e32a52: Pull complete 。
ae1b8d879bad: Pull complete 。
42cfa3699b05: Pull complete 。
053cac798c4e: Pull complete 。
e11ff976ff71: Pull complete 。
81d72bab54a7: Pull complete 。
fcefcb4d99e7: Pull complete 。
592d9f42009b: Pull complete 。
ce856dc9b932: Pull complete 。
d9923fa7208c: Pull complete 。
Digest: sha256:3cafc15d21892b6576250763c7ea2fba64f92ff7b79604d26e7f10496da3db6a 。
Status: Downloaded newer image for moerats/express-ffmpeg:latest 。
36b449328f2584b54edefce9319877e6c1b92b05e393ca9b3e9bdbebc1d0af6a 。
。
4、运行镜像创建容器 。
好了,刚才都是准备工作,现在开始我们这项工程的“大头儿”——创建自己的点播服务.
执行如下命令:
docker run --restart=always --name express-ffmpeg -d -p 3000:3000 -e localip=172.31.102.226 -e usr=moerats -e pass=moerats -e url=moerats -v ~/express-ffmpeg/mongodb:/data -v ~/express-ffmpeg/config:/express-ffmpeg/config -v ~/express-ffmpeg/movies:/express-ffmpeg/movies -v ~/express-ffmpeg/videos:/express-ffmpeg/public/videos -v ~/express-ffmpeg/uploads:/express-ffmpeg/public/uploads -v ~/express-ffmpeg/images:/express-ffmpeg/public/images moerats/express-ffmpeg
将上述命令全部复制并粘贴到终端窗口中(类似windows系统的CMD窗口),如果,你对docker不是很了解,可以不需要关心上述命令的含义.
。
5、访问Web点播首页 。
上述命令运行顺利的话,我们就可以访问本地浏览器的Web点播首页了.
在浏览器中输入如下地址:
http://172.31.102.226:3000/ 。
正常如下图所示:
是不是很神奇?
当然,访问地址需要根据你服务器的ip动态填写,我的服务器ip是172.31.102.226,如果你的服务器ip是192.168.10.1,那你在浏览器中的访问地址就是 http://192.168.10.1:3000.
6、上传点播文件 。
现在是看到cms点播系统的首页了,但是什么内容都没有,怎样才能播放自己想要的视频内容呢?
接下来,我们就从后台上传我们感兴趣的视频.
访问后台地址: http://172.31.102.226:3000/moerats 。
然后出现如下界面:
输入默认账号和密码,moerats/moerats.
然后,点击“登陆”按钮.
7、管理后台界面 。
登陆后,我们进入了后台管理界面,如下图所示:
然后,点击右上角的“上传电影”按钮,我们就来到上传界面:
点击“添加电影”,选择想要上传的视频文件.
上传完成后,我们可以到“电影库”查看视频文件列表,如下图所示:
我们可以看到视频文件的名称、大小、状态等信息.
8、注册并登陆前台账户 。
我们可以来到前端页面,先注册账号,如下图所示:
注册成功后,用对应的账户进行登陆,具体步骤如下图所示:
登陆成功后,我们依然看不到自己刚才上传的视频文件,那怎么做才能在前端页面看到它呢?
9、操作视频文件 。
对电影库中的视频文件执行转码切片操作,具体操作如下图所示:
当视频文件的状态由“waiting”变为“finished”时,我们就可以从前端页面看到对应的视频内容了.
首页展示如下图所示:
至此,我们就大功告成了.
结尾 。
大家的愿望是不是已经实现了呢? 哈哈,还有很多操作和细节设置没有讲到,感兴趣的话欢迎评论留言,我后边继续更新大家想要的内容.
以上就是docker搭建cms点播系统带播放器功能的详细内容,更多关于docker cms点播系统的资料请关注我其它相关文章! 。
最后此篇关于docker搭建CMS点播系统带播放器功能的文章就讲到这里了,如果你想了解更多关于docker搭建CMS点播系统带播放器功能的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
谁能详细说明以下问题? 蓝牙堆栈如何处理音频数据? 如何处理音频命令? 我们需要任何服务来处理音频数据吗? 提前致谢。 最佳答案 基本上,通过 BLE 的语音命令需要: 一些用于减少所需带宽的音频编解
我正在使用Player库以实现全屏视频播放。我相信它在幕后使用 AVFoundation。 我可以使用Float(self.player.maximumDuration)来实现视频的完整持续时间。但是
我正在制作一种宏记录器/播放器 我已经使用 java.awt.Robot() 等实用程序完成播放器部分,它模拟基本的人类鼠标/键盘输出命令,读取 XML 文件。 我卡在了必须记录该 XML 文件的部分
我目前有以下代码可以在页面上播放 youtube 视频。 //Load player api asynchronously. var tag = document.createElement('s
我需要提供音频内容(但不是音乐,更像是播客;人类语音),我正在考虑使用基于 Flash 的播放器让用户无需下载即可收听内容。 我需要一个免费的可嵌入 Flash 的 mp3 播放器。有什么建议? 因为
html5 player/api 更新了吗?事件 SC.Widget.Events.PLAY, SC.Widget.Events.PAUSE, SC.Widget.Events.FINISH, htm
我想在 Lubuntu VMware 中自动打开和关闭 vlc 播放器。我试过一个shell脚本代码,如: vlc rtmp://code sleep(5) exit 0 or vl
我有一个只支持纵向模式的应用程序,它有一个表格,每个单元格包含一个标题和一个带有 YouTube 视频的 web View 。 现在您将如何让 Youtube 播放器同时处于横向和纵向模式?
我正在尝试在我的应用程序中使用 YouTube 播放器 API,但我不知道如何确定视频是否为直播。如果有人知道如何获得视频的真实持续时间。 更新: 我想出了一种方法来确定内容是否是实时的,我使用我的后
我想创建一个能够播放 YouTube 视频的音频并将下载的内容保存在本地缓存中的应用程序,因此当用户决定恢复或再次播放视频时,它不必再次下载部分视频而只需下载剩余部分(用户可以决定如何处理缓存,以及如
我希望我的页面将 div 显示为模态,然后播放 YouTube 视频。我能够按预期播放视频(下面的代码),但是当我在过滤操作时切换到隐藏的 div 时,页面加载时隐藏的 div 不会将 data-sr
我正在尝试使用 AngularJS 和 WP API 构建 SPA。我使用部分在 ng-view 中加载我需要通过路由显示的所有内容。在此基础上,我添加了 Plangular,它是一个使用 Sound
我找到了一个不错的 HTML 5 音频播放器,它带有基于 plyr 的播放列表和艺术品。它在我的桌面浏览器上运行良好,但在我的移动设备 (iOS) 上,按播放后无法播放。有一个codepen来演示:
我正在尝试通过pyglet在Python 3中播放歌曲。我可以播放和停止播放一首歌曲,但是当我尝试播放下一首歌曲时会产生错误。 I followed these instructions.我将在tki
如何将嵌入的 Vimeo 视频重置为播放完毕后的加载状态? Vimeo API 提供了卸载方法 player.api("unload") 但它不适用于非 Flash 播放器。 最佳答案 使用Vimeo
我有一个用于音频录制和播放的网络应用程序。为此,我正在使用 html5 播放器。 现在我必须开发 Phonegap Android 应用程序。我已将插件(org.apache.cordova.medi
有人知道如何像 SuperFlix 一样将自己的字幕加载到 Netflix 播放器吗?关于 Netflix HTML5 播放器的信息很少,其中之一是我应该可以使用 操作播放器 netflix.cadm
如何将新的黑色 YouTube 播放器嵌入到我的网站(刚刚推出的网站)中? 我以前曾问过这个问题,但它已关闭,因为在投票否决和关闭之前没有人愿意真正阅读该问题。不,我没有问如何嵌入V2或V3播放器,我
几个小时以来,我一直在尝试添加一种打开我的 mp3 文件的方法并在队列中一一打开它们。但我不知道该怎么做。当涉及到单个文件时,我打开并播放不是问题。所以我正在考虑 Media(JavaFX) 类中的线
我知道这个函数 (setFullscreen) 只适用于 HTML5,但它对我不起作用。这是我使用的方式: setFullscreen: true 我希望 JW Player 在页面加载后立即以全屏模
我是一名优秀的程序员,十分优秀!