PeerTube 安装教程:如何搭建视频分享平台


阿拉平平

读完需要

8

分钟

速读仅需 3 分钟


最近在 GitHub 上看到了一个比较有意思的视频平台 PeerTube,与一般的视频平台不同,它的目标是打造一个去中心化的视频平台,即使某个节点出现问题,也不会影响观众观看视频。本文将介绍 PeerTube 的安装与使用方法。


1. 项目介绍


   

PeerTube[1]  是一个开源、分布式、可互联的视频平台,通过点对点网络来减少单一服务器的负载。任何人都可以在服务器上搭建 PeerTube,共享上传的视频。


2. 下载安装


   

目前 PeerTube 的最新版本为 v3.0.1,可以通过源码或者 docker 来安装。这里我准备采用容器的方式,将项目部署在一台 CentOS 7.8 的虚拟机上。

部署前需要安装 dockerdocker-compose。安装好后,创建并进入 PeerTube 的工作目录:

[root@localhost ~]# mkdir /opt/peertube/
[root@localhost ~]# cd /opt/peertube/

2.1 编排文件


   

下载最新的编排文件 docker-compose.yaml

[root@localhost peertube]# curl https://raw.githubusercontent.com/chocobozzz/PeerTube/develop/support/docker/production/docker-compose.yml > docker-compose.yml
这个文件将创建以下服务,可根据实际情况进行调整:
  • webserver:web 服务,供浏览器访问。

  • peertube:后端服务,提供核心内容。

  • redis:后端数据存储。

  • postgres:后端数据库。

  • postfix:提供邮件服务。

  • certbot:自动续期 Let’s Encrypt 证书。


2.2 .env


   

下载最新的 .env 文件:
[root@localhost peertube]# curl https://raw.githubusercontent.com/Chocobozzz/PeerTube/develop/support/docker/production/.env > .env

修改以下参数:

  • <MY POSTGRES USERNAME>:数据库的用户名。

  • <MY POSTGRES PASSWORD>:数据库的密码。

  • <MY DOMAIN>:域名,不用加 https://

  • <MY EMAIL ADDRESS>:邮箱地址。


2.3 webserver


   

webserver 本质是一个 nginx 服务,所以需要下载配置文件 peertube
[root@localhost peertube]# mkdir -p docker-volume/nginx
[root@localhost peertube]# curl https://raw.githubusercontent.com/Chocobozzz/PeerTube/develop/support/nginx/peertube > docker-volume/nginx/peertube

如果要使用本地的 nginx 服务,则需要修改配置文件的变量值,并注释掉编排文件中的 webserver。


2.4 域名


   

搭建 PeerTube 需要一个 HTTPS 域名,如果满足条件,可以注释掉编排文件中的 certbot。

如果有域名,但没有 HTTPS 证书,则可以通过 certbot 生成免费的证书。

[root@localhost peertube]# mkdir -p docker-volume/certbot
[root@localhost peertube]# docker run -it --rm --name certbot -p 80:80 -v "$(pwd)/docker-volume/certbot/conf:/etc/letsencrypt" certbot/certbot certonly --standalone

由于手边没有域名,所以准备以 https://<ip> 来访问,配置方法如下:

# 创建并进入目录,192.168.128.134 为虚拟机 IP
[root@localhost peertube]# mkdir -p docker-volume/certbot/conf/live/192.168.128.134
[root@localhost peertube]# cd docker-volume/certbot/conf/live/192.168.128.134
# 生成 HTTPS 证书
[root@localhost 192.168.128.134]# openssl genrsa -des3 -out privkey.pem 2048
[root@localhost 192.168.128.134]# openssl rsa -in privkey.pem -out privkey.pem
[root@localhost 192.168.128.134]# openssl req -new -key privkey.pem -out privkey.csr
[root@localhost 192.168.128.134]# openssl req -new -x509 -key privkey.pem -out ca.crt -days 3650
[root@localhost 192.168.128.134]# openssl x509 -req -days 3650 -in privkey.csr -CA ca.crt -CAkey privkey.pem -CAcreateserial -out fullchain.pem


2.5 启动


   

全部配置完成后,运行以下命令启动:
# 回到工作目录并启动
[root@localhost 192.168.128.134]# cd /opt/peertube/
[root@localhost peertube]# docker-compose up -d

服务启动后,就可以通过浏览器来访问,界面如下:

PeerTube 安装教程:如何搭建视频分享平台

3. 使用说明


   

本章将简单演示下 PeerTube 的用法,包含:

  • 如何用 root 账号登录

  • 如何上传视频

  • 如何订阅视频


3.1 登录


   

PeerTube 内置了一个管理员账号,通过以下命令获取 root 的密码:
[root@master peertube]# docker-compose logs peertube | grep -A1 root
peertube_1   | [192.168.128.134:443] 2021-03-15 07:38:30.809 info: Username: root
peertube_1   | [192.168.128.134:443] 2021-03-15 07:38:30.809 info: User password: kegumejubikozido

登录后的界面如下:

PeerTube 安装教程:如何搭建视频分享平台


3.2 上传视频


   

点击右上角的「上传」,选择要上传的视频。
PeerTube 安装教程:如何搭建视频分享平台
上传的视频可以在线播放,支持下载、分享以及评论:

PeerTube 安装教程:如何搭建视频分享平台

3.3 订阅视频


   

如果需要订阅他人的视频,只需在管理页面选择 「Instances you follow 」,点击「Follow domain」,加入域名即可。
PeerTube 安装教程:如何搭建视频分享平台
提交的请求需要对方允许,否则会一直处于等待中:
PeerTube 安装教程:如何搭建视频分享平台

4. 写在最后


   

PeerTube 的机制与 BT 下载类似,多个用户在观看同一部视频时,可相互连接、传输数据给对方,达到播放视频加速的效果。如果大家对这个项目有兴趣的话,可以查阅官方文档[2] 获得更多帮助。

References

[1] PeerTubehttps://github.com/Chocobozzz/PeerTube

[2] 官方文档: https://docs.joinpeertube.org

原文始发于微信公众号(阿拉平平):PeerTube 安装教程:如何搭建视频分享平台

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/287814.html

(0)
码上实战的头像码上实战

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!