搭建firefox-send文件分享服务

2023-10-21 11:03:29 浏览数 (2)

前言

最近有分享文件的需要,网上的在线分享服务一般都有诸多限制条件,不如自己搭一个自己用着舒服。 早就听说firefox的send服务不错,但早就下线了。所幸代码开源,有不少大佬写过搭建教程。我比较懒,只想用dokcer来做。但是网上找到的dokcer版send搭建教程很多都不能用,不是采集的,就是过时的,要不就是上传卡住不动的,最接近于成功的一次是可以上传,但上传完毕后会显示我们遇到错误,F12查看网络通讯是返回了401错误。

可用的搭建方法

更新

网友反馈使用密码时总是会出现“密码错误”,经查确实存在此问题。我翻阅网络资料,并且经实践证实,需要设置NODE_ENV=production环境变量才可正常使用。 下面的docker-compose.yml文件我已经更新,加上了这条设置。

最后在hostloc论坛上找找到了可用的docker版firefox-send服务。可以使用docker-compose快速搭建。 docker-compose.yml内容如下:

代码语言:javascript复制
version: "3.8"
services:
  web:
    image: enwaiax/firefox_send:plus
    links:
      - redis
    ports:
      - "1443:1443"
    restart: unless-stopped
    environment:
      - REDIS_HOST=redis
      - NODE_ENV=production
  redis:
    image: redis:alpine
    restart: unless-stopped

创建该文件后在同文件夹内执行docker-compose up -d即可。 然后网页访问IP:1443使用服务。

nginx反代

我想在使用时免去输入端口号,正好服务器上安装有nginx,于是反代一下。好像因为上传使用的ws协议,需要反代2处。

代码语言:javascript复制
location / {
                proxy_pass http://127.0.0.1:1443;
                proxy_cache off;
                proxy_buffering off;
                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 X-Forwarded-Proto $scheme;
        }

location /api/ws {
       proxy_redirect off;
       proxy_pass http://127.0.0.1:1443;
       proxy_http_version 1.1;
       proxy_set_header Upgrade $http_upgrade;
       proxy_set_header Connection "upgrade";
       proxy_set_header Host $http_host;
   }

0 人点赞