SnapDrop Docker搭建


前言

SnapDrop是一个基于WebRTC接口来实现提供局域网内跨平台传输文件和信息服务的开源项目,基于GNU 3.0协议在GitHub开放源代码。
Github链接
本文是笔者在自己搭建过程中踩了些坑从而产生了把这些坑记录下来为后来人更加方便使用而写。

1. 环境部署

为了方便,直接Docker(其实手动也行,但要稍微麻烦些)。
需要Docker环境以及docker-compose

Docker安装

官方一键脚本

curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker

docker-compose安装

手动下载二进制

国外机(能直连Github的国内机亦可)

curl -L https://github.com/docker/compose/releases/download/$(curl -sL https://api.github.com/repos/docker/compose/releases | jq -r ".[0].name")/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

国内机

curl -L https://git.asoulrelay.workers.dev/docker/compose/releases/download/$(curl -sL https://gitapi.asoulrelay.workers.dev/repos/docker/compose/releases | jq -r ".[0].name")/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

PIP安装

pip install docker-compose

2.开始搭建

① 克隆项目

国外机

git clone https://github.com/RobinLinus/snapdrop.git

国内机

git clone https://git.asoulrelay.workers.dev/RobinLinus/snapdrop.git

②进入目录并修改权限

对,没错,原版Docker脚本年久失修,需要自己手动新建文件夹并给予权限等操作.

#进入目录
cd snapdrop
#新建文件夹
mkdir /server/node_modules
#给予权限
chmod -R 777 ./server
#进行部署
#如果需要修改端口等信息或者是需要域名反代就在修改之后再运行下方代码
docker-compose up -d

3.域名配置

我是使用宝塔为了方便,nginx的配置也不复杂,大概就是在默认配置文件中加入以下反代代码即可。
以反代12345端口为例子

#PROXY-START/
location /
{
    proxy_pass https://127.0.0.1:12345;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header Connection "upgrade";
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header X-Forwarded-for $remote_addr;
    add_header X-Cache $upstream_cache_status;
    #Set Nginx Cache
    	add_header Cache-Control no-cache;
}
#PROXY-END/

同时需要修改./docker/fqdn.env

FQDN=你的域名(无http/https前缀)

然后进行部署即可。
至于套CDN咱也没试过,反正丢国内机上的(


文章作者: xieshang
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC 4.0 许可协议。转载请注明来源 xieshang !
评论
  目录