如何搭建阅后即焚文件快递柜(FileCodeBox )
更多语言
更多操作
FileCodeBox 是一款基于FastAPI + Vue3 开发的轻量级文件分享系统。它模仿取快递的模式,当用户上传文件后会生成一个“取件码”,接收者只需要只需输入该码即可提取文件。
这次教程的项目搭建在搬瓦工E-Commerce SLA 系列 VPS上 。E-Commerce SLA 系列99.99% 的SLA保障和顶级中国优化线路,可以完美解决我们在传输和分享文件时遇到的痛点:
- 防泄露与省流量: 支持“阅后即焚”及下载次数限制,有效防止链接被二次传播导致数据泄露,并节省服务器流量。
- 规避平台审查: 解决微信、QQ 等社交软件自动修改文件格式或直接屏蔽文件的问题,确保任何文件都能成功发送。
- 极速免登录: 彻底摆脱网盘限速和“强制登录才能下载”的烦人限制,配合搬瓦工中国优化线路实现满速提取。
需要准备的事项:
1.拥有一台搬瓦工的服务器(参考教程);
2.服务器在运行,且安装了debian12系统(参考教程);
3.拥有一个域名(反向代理需要);
4. SSH 连接工具已准备就绪(例如 Xshell)。
一、连接服务器并安装 FileCodeBox
FileCodeBox 需要用到Docker,本部分将一并完成 Docker 环境的安装。
1.SSH 连接与基础工具安装
使用 SSH 工具连接到您的搬瓦工服务器(推荐使用 Xshell 等工具,如果你是个人或家庭使用,可以下载 Xshell:下载链接),
然后执行下方命令安装必要的工具。
apt-get install wget curl vim sudo unzip -y
为了优化编辑体验,执行以下命令,防止后期使用 vi 编辑时出现剪贴板或格式报错:
echo set clipboard=unnamed >> ~/.vimrc
2.安装并启动 Docker
执行下方命令安装 Docker,安装过程预计耗时数十秒。
wget -qO- get.docker.com | bash
Docker 安装完成后,执行以下命令启动 Docker 服务并设置开机自启:
systemctl start docker
systemctl enable docker
3.创建 FileCodeBox 目录
创建一个目录用于存放 Docker 配置文件和相关数据,并进入该目录:
mkdir FileCodeBox && cd FileCodeBox
4.创建 Docker Compose 文件
在 FileCodeBox 目录下,执行下方命令,创建一个 docker-compose.yml 文件:
vi docker-compose.yml
进入 vi 编辑页面后,按下键盘 i 键进入编辑模式,将以下配置复制进去,按下键盘 ESC 键退出编辑模式,然后输入 :wq,然后按下Enter键保存。
version: "3"
services:
file-code-box:
image: lanol/filecodebox:latest
volumes:
- fcb-data:/app/data:rw
restart: unless-stopped
ports:
- "12345:12345"
volumes:
fcb-data:
external: false
5.启动 FileCodeBox
在 FileCodeBox 目录下,执行以下命令启动服务:
docker compose up -d
显示如下信息,则说明启动成功。
二、FileCodeBox 的初始配置
安装完成后,我们需要进入后台进行安全设置。
- 后台地址:
http://你的服务器IP:12345/#/admin - 默认管理员密码:
FileCodeBox2023
1. 修改默认密码
登录后,请第一时间在后台修改管理员默认密码,避免被盗用。
2. 上传参数配置
在系统设置中,根据服务器的实际配置,设置最大上传文件大小、存储时长、文件过期策略等参数。
三、如何使用FileCodeBox
FileCodeBox 的默认访问地址为:http://你的IP:12345
1.发送文件
1.1 FileCodeBox默认界面是取件页面,点击要发送件,到发送文件页面
1.2 设置文件的过期时间或下载次数(如:下载 1 次后销毁)。
1.3 文件上传成功后,系统会生成取件码、分享链接及二维码等。
2.取文件
2.1 取件码取文件:直接访问默认地址你的IP:12345,然后输入取件码
以下是取件页面。
2.2 二维码取文件:手机扫描二维码,直达文件下载页面。
2.3 链接提取:接收者直接访问分享链接即可进入提取页面。
四、进阶优化:配置反向代理
为了方便记忆访问地址并启用 HTTPS (提高安全性),建议配合安装 Nginx Proxy Manager (NPM) 进行反向代理。
如何搭建Nginx Proxy Manager并使用反向代理和远程桌面加速
默认情况下,FileCodeBox参数如下。
location / {
proxy_set_header X-Real-IP $remote_addr; # 设置真实客户端IP
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:12345;
}