自建文件快递柜FileCodeBox:3分钟实现取文件像拿快递一样

0 阅读3分钟

我最近被"发文件"这件事烦到了:微信会压缩,网盘要登录,临时链接还老是过期。于是我干脆在github上逛一逛看看能不能找到一个满足我的需求的项目,还别说我真找到了一个项目--FileCodeBox。你把文件丢进去,它生成一个取件码,对方打开网页输一下就能拿走,取文件像拿快递一样。

这是该项目的地址:github.com/vastsa/File…

废话讲完了,下面直接上部署流程。

这篇文章实现四个目标:

1.搭建filecodebox。

2.访问filecodebox后端并改密码。

3.为filecodebox添加ssl证书。

4.filecodebox用法演示

1.搭建filecodebox

我准备用1panel面板搭建这个项目。

在1panel的应用商店中搜索filecodebox,找到这个应用后就点击安装,紧接着就会进入安装界面:

6-1.png 这里注意一下: 端口最好写成12345,当然你也可以设置你想要的。但是如果你的端口不是12345,请注意下面的nginx配置,将12345改成你设置的端口。

端口外部访问先打开。

容器名称你也可以改成你喜欢的。

所有的配置好了以后,勾选编辑compose文件。

你可以直接将我的粘贴过去,也可以默认,不影响的。我改了一下路径:

services:
  filecodebox:
    container_name: ${CONTAINER_NAME}
    image: lanol/filecodebox:beta
    restart: always
    networks:
      - 1panel-network
    ports:
      - "${PANEL_APP_PORT_HTTP}:12345"
    volumes:
      - "/opt/filecodebox:/app/data"
    labels:
      createdBy: "Apps"
networks:
  1panel-network:
    external: true

好了以后,点击确认。

6-2.png

等待它安装成功。

6-3.png

出现这个界面就是安装成功了。

现在我们来测试一下,filecodebox能不能正常访问。假如你的vps的IP是:145.26.65.200。

那么就访问:http://145.26.65.200:12345

出现这个界面就是说明filecodebox搭建好了:

6-4.png 你可以修改界面语言和主题。 我看着深色主题还是蛮好看的:

6-5.png

2.访问filecodebox后端并改密码

filecodebox的后端地址是:http://145.26.65.200:12345/#/admin

6-6.png

默认密码是:FileCodeBox2023 现在登录进去并修改密码:

6-7.png

6-8.png

修改完后,往下拉,点击保存设置。

3.为filecodebox添加ssl证书

申请ssl证书的具体的步骤我就不再多说,你可以看这篇文章:HTTPS证书怎么弄?SSL证书申请、安装、续期全流程一次讲清

我只把申请证书的命令和nginx的配置贴出来:

假设你的域名是:app.com,在dns界面添加的名称是filecodebox

申请证书的命令:

certbot certonly --webroot -w /var/www/html -d filecodebox.app.com

nginx的配置:

map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}

server {
    listen 80;
    server_name filecodebox.app.com;

    location ^~ /.well-known/acme-challenge/ {
        root /var/www/html;
        default_type "text/plain";
        try_files $uri =404;
    }

    location / {
        return 301 https://$host$request_uri;
    }
}

server {
    listen 443 ssl http2;
    server_name filecodebox.app.com;

    ssl_certificate     /etc/letsencrypt/live/filecodebox.app.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/filecodebox.app.com/privkey.pem;

    location ^~ /.well-known/acme-challenge/ {
        root /var/www/html;
        default_type "text/plain";
        try_files $uri =404;
    }

    location / {
        proxy_pass http://127.0.0.1:12345;
        proxy_http_version 1.1;

        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;

        proxy_set_header Upgrade           $http_upgrade;
        proxy_set_header Connection        $connection_upgrade;
    }
}

注意:这个配置中有四个filecodebox.app.com,将这四个换成你自己的域名。如果你在搭建filecodebox的过程中使用的端口不是12345,那么将该配置中的12345改成你自己设置的端口。

nginx配置好后,重载nginx:

systemctl reload nginx

将上面的一切配置好后,你访问filecodebox和后端的地址就变了。

filecodebox地址:filecodebox.com

ficodebox后端地址:filecodebox.com/#/admin

**4.filecodebox用法演示 **

现在搭建好了,那应该怎么用呢? 下面演示一下。 发送文件:

6-9.png

这里可以选择发送文件还是文本,修改过期时间:

6-10.png 什么都配置好后,点击安全寄送。 这时会出现一个取件码:

6-11.png 手机的话就比较方便了,直接扫图上的二维码就行了。电脑的话访问网址:filecodebox.com

输入取件码:

6-12.png 这就可以下载了。