如何快速搭建一个视频网站

使用CMS搭建一个视频网站:呆呆的真卡影剧院。

环境准备

  • docker
  • docker-compose

无论是linux、windows还是Mac系统,只需要安装Docker即可,其他的所有东西都是拉取docker的镜像。docker的官方安装教程;以及docker-compose的官方安装教程。在命令行中分别输入docker -vdocker-compose -v看看有没有输出结果,如果是能够正常显示安装的docker版本和docker-compose版本的话就安装完成了。

# docker -v
Docker version 20.10.2, build 2291f61
# docker-compose -v
docker-compose version 1.28.2, build 67630359

可以自行搜索下docker换源的教程,建议使用中国科技大学的镜像源,下载的比较快。

拉取镜像

  • nginx
  • mariadb
  • dingzx97/cms:maccms

输入docker pull nginxdocker pull mariadbdocker pull dingzx97/cms:maccms拉取相应的镜像,之后输入docker images命令看看这些镜像。

# docker pull nginx
......
# docker pull mariadb
......
# docker pull dingzx97/cms:maccms
......
# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
dingzx97/cms maccms e60dde77544e 2 weeks ago 98.8MB
nginx latest 7ce4f91ef623 6 weeks ago 133MB
mariadb latest ade39f0469a3 3 months ago 407MB

运行容器

从这里下载所需的配置文件docker-compose.ymlnginx/maccms.confdocker-compose.yml放在一个文件夹下,然后这个文件夹下新建一个nginx文件夹,maccms.conf放在新建的nginx文件夹里面。命令行切换到这个放了docker-compose.yml文件的路径下,执行docker-compse up -d命令。确保系统的80端口没有被占用。

# docker-compse up -d
Creating network "maccms_cms" with the default driver
Creating maccms ... done
Creating nginx ... done
Creating mariadb ... done

配置苹果CMS

在windows或mac上运行的容器的话,就用直接浏览器访问http://localhost;如果是用linux系统的话,就用其他电脑访问其ip地址,云服务器还需要打开80端口才行。打开就能看到如下图网站界面了。

图:docker-maccms启动成功

数据库配置如下:

  • 服务器地址:mariadb
  • 数据库名称(随便填):maccms
  • 数据库账号:root
  • 数据库密码:123456

之后点击测试数据库连接确认能正常连接数据库。之后网站管理员账号和密码就自己填了。数据库密码在docker-compose.yml文件中有配置,需要自定义的话就去修改相应的字段。

图:maccms数据库配置页面

安装完成之后提示需要修改网站后台的入口文件名,在命令行中运行docker exec maccms mv admin.php <新名称>.php,运行完命令没有输出提示。以下假设新名称是newaddr.php。之后修改nginx/maccms.conf这个文件,将rewrite ^/admin.php(.*)$ /admin.php?s=$1 last;这一行中的两处admin.php修改为新名称newaddr.php,再重新启动nginx容器。那么访问网站后台就是用浏览器打开http://localhost/newaddr.php即可看到后台的登录页面。

图:后台登录页面

至此,视频网站的基础就搭建完成了,虽然啥电影都没有。

数据采集

视频网站没有视频那不是很尴尬,视频都是采集过来的,一般都是从网上找找资源采集的网站。以下是我使用中的资源采集网站:

先添加下载的播放器文件,之后绑定分类再采集。

乐多资源:http://www.leduozy.com/help/#MacCms10 (2021-05-13测试可用)

使用 Hugo 构建
主题 StackJimmy 设计