简介
PeerTube是一个视频上传、分享服务平台,这个项目是建立在webtorrent这个项目和ActivityPub协议;架构很灵活,可以支持自建服务器,web版本的bittorrent分发视频,简而言之,就是建立了一个去中心化的,在线版的快播。- 每个
peertube节点称之为一个Instance。 - 一个
Instance可以提供类似youtube的服务,可以开放用户注册,上传视频。 - 多个
Instance之间通过bittorent共享服务。 - 用户访问
Instance时,多个用户通过webtorrent来交换数据,变身seeds,从而减轻服务器压力,提高车速。 - 如果只有一个用户观看,
Instance自动变成seeds。 - 支持
ActivityPub协议,后续可以搭建去中心化的评论平台之类的。 Github项目地址:https://github.com/Chocobozzz/PeerTube
截图
安装
本教程适用于
CentOS、Debian、Ubuntu系统,内存至少为1G,并在Debian 8 X64下完美通过。
1、安装Docker和Docker Compose
#安装Docker
curl -sSL https://get.docker.com/ | sh
service docker start
#安装Docker Compose
curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
2、添加虚拟内存
如果你的内存足够的大,这步可以跳过。
如果你的内存足够的大,这步可以跳过。
cd /var/
#获取文件块,count后面参数建议为内存的2倍
dd if=/dev/zero of=swapfile bs=1M count=2048
#创建swap文件
/sbin/mkswap swapfile
#激活swap文件
/sbin/swapon swapfile
#修改权限
chmod 0644 /var/swapfile
#开机自启
echo "/var/swapfile swap swap defaults 0 0" >>/etc/fstab
3、下载PeerTube并配置
git clone https://github.com/Chocobozzz/PeerTube.git
如果提示
git不存在的,运行:#Debian/Ubuntu系统
apt-get -y install git
#CentOS/RHEL系统
yum -y install git
修改
docker-compose.yml文件,并将内部端口9000暴露出来,使其映射到其它外部端口。cd /root/PeerTube/support/docker/production/
nano docker-compose.yml
编辑文件,将
PEERTUBE_HOSTNAME参数后面写成你的域名,并在文件里添加ports代码:#前面的端口随便填
ports:
- "8000:9000"
#示例
version: "3.3"
services:
peertube:
ports:
- "8000:9000"
build:
4、运行容器
docker-compose up
如果遇到错误
Error: EACCES: permission denied, mkdir '/data/logs',使用Ctrl+c关闭,并运行:chown -R 991:991 data/
然后后台启动
docker-compose up -d
然后可以进入
http://IP:8000查看界面了。
5、配置https访问
为了方便,这里使用
为了方便,这里使用
Caddy反代,并自动添加ssl证书。
安装
Caddywget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filemanager
#备用地址
wget -N --no-check-certificate https://www.moerats.com/usr/shell/Caddy/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filemanager
编辑配置文件
#以下全部内容是一个整体,修改域名、IP、邮箱后一起复制到SSH运行!
echo "https://xx.com {
tls admin@moerats.com
proxy / 111.111.111.111:8000 {
header_upstream Connection {>Connection}
header_upstream Upgrade {>Upgrade}
header_upstream Host {host}
header_upstream X-Real-IP {remote}
header_upstream X-Forwarded-For {remote}
header_upstream X-Forwarded-Proto {scheme}
}
log /var/log/caddy.log
gzip
}" > /usr/local/caddy/Caddyfile
启动
Caddy/etc/init.d/caddy restart
最后就可以通过域名
https访问了。
转自:
.png)
.png)
.png)