OnlyTL

OnlyTL

【Docker项目】文件快递柜 FileCodeBox

【Docker项目】文件快递柜 FileCodeBox

1. 前言

  经常会有一些远程文件传输需要,远程自带的文件传输,速度较慢,所以一直通过云盘,QQ等方式来传递。后来发现了FileCodeBox,很好的解决了这个问题,FileCodeBox是一个轻量级的文件分享网站,可以通过匿名口令来分享文件,像通过取件码拿快递一样。这样在远程时无需下载三方软件,也无需登录,即时使用。

项目地址

Github

官方示例

主要特色

以下是来自官方介绍的主要特色

  • 轻量简洁:Fastapi+Sqlite3+Vue2+ElementUI
  • 轻松上传:复制粘贴,拖拽选择
  • 多种类型:文本,文件
  • 防止爆破:错误次数限制
  • 防止滥用:IP限制上传次数
  • 口令分享:随机口令,存取文件,自定义次数以及有效期
  • 国际化:支持中文和英文
  • 匿名分享:无需注册,无需登录
  • 管理面板:查看所有文件,删除文件
  • 一键部署:docker一键部署
  • 自由拓展:S3协议、本地文件流,可根据需求在storage文件中新增存储引擎
  • 简单明了:适合新手练手项目

2. 项目展示

取件

Snipaste_2023-11-25_13-23-10.png

发件

Snipaste_2023-11-25_13-24-06.png

后台设置

Snipaste_2023-11-25_13-25-41.png

3. 部署

Docker-Compose方式

# 1. 创建目录
mkdir /var/docker/fileCodeBox

# 2. 进入目录
cd /var/docker/fileCodeBox

# 3. docker-compsoe.yml
vim docker-compose.yml

docker-compose.yml 内容如下

version: '3'
services:
  filecodebox:
    image: lanol/filecodebox:beta
    container_name: filecodebox
    restart: always
    ports:
      - "12345:12345"
    volumes:
      - /opt/FileCodeBox/:/app/data

启动

docker-compose up -d
# 或者(新版)
docker compose up -d

4. 结语

使用起来还是很方便的,我自己部署时使用了 nginx 反代到了一个二级域名上,使用nginx时需要注意一个问题,要将 Nginx 的客户端允许最大配置 client_max_body_size 设的大一些,具体根据使用文件大小决定,不然上传文件会出错(413 Request Entity Too Large) 。