FileCodeBox - 一个轻量级文件快递柜
FileCodeBox 是一个轻量级文件快递柜,用户以匿名口令分享文本、文件,像拿快递一样取文件。
主要特色
- 轻量简洁:Fastapi+Sqlite3+Vue2+ElementUI
- 轻松上传:复制粘贴,拖拽选择
- 多种类型:文本,文件
- 防止爆破:错误次数限制
- 防止滥用:IP限制上传次数
- 口令分享:随机口令,存取文件,自定义次数以及有效期
- 匿名分享:无需注册,无需登录
- 管理面板:查看所有文件,删除文件
- 一键部署:docker一键部署
- 自由拓展:阿里云OSS、本地文件流,可根据需求在storage文件中新增存储引擎
- 简单明了:适合新手练手项目
部署
- 依赖环境 - 🌏 CentOS 7 安装 Docker
- 部署,执行以下命令即可部署启动
# docker run -d --restart=always -p 12345:12345 -v /opt/FileCodeBox/:/app/data --name filecodebox -e TZ=Asia/Shanghai lanol/filecodebox:latest
使用
- Docker 部署完成后,浏览器输入以下地址,访问 FileCodeBox
http://IP地址:12345/
例:
http://192.168.10.15:12345/
- 点击上传按钮,上传文件(注:刚部署上时,由于没有上传文件分享,直接输入取件码是无效的/)
- 将文字、文件拖、粘贴到文件上传框中,或者点击上传
- 上传完成后,点击我的文件,即可获得文件分享的取件码,分享给别人时,输入取件码即可获得文件!
- 取件,浏览器打开 FileCodeBox 地址,输入取件码即可获取分享的文件。
修改配置 - 可选
如果需要修改配置,可以将该文件放在/opt/FileCodeBox/目录下,并命名为.env,然后重启容器即可。 如果不是Docker,则需要在项目同目录下新建一个data文件夹,然后在创建.env文件
# 端口
PORT=12345
# Sqlite数据库文件
DATABASE_URL=sqlite+aiosqlite:///database.db
# 静态文件夹
DATA_ROOT=./static
# 静态文件夹URL
STATIC_URL=/static
# 开启上传
ENABLE_UPLOAD=True
# 错误次数
ERROR_COUNT=5
# 错误限制分钟数
ERROR_MINUTE=10
# 上传次数
UPLOAD_COUNT=60
# 上传限制分钟数
UPLOAD_MINUTE=1
# 删除过期文件的间隔(分钟)
DELETE_EXPIRE_FILES_INTERVAL=10
# 管理地址
ADMIN_ADDRESS=admin
# 管理密码
ADMIN_PASSWORD=admin
# 文件大小限制,默认10MB
FILE_SIZE_LIMIT=10
# 网站标题
TITLE=文件快递柜
# 网站描述
DESCRIPTION=FileCodeBox,文件快递柜,口令传送箱,匿名口令分享文本,文件,图片,视频,音频,压缩包等文件
# 网站关键词
KEYWORDS=FileCodeBox,文件快递柜,口令传送箱,匿名口令分享文本,文件,图片,视频,音频,压缩包等文件
# 存储引擎
STORAGE_ENGINE=filesystem
# 如果使用阿里云OSS服务的话需要额外创建如下参数:
# 阿里云账号AccessKey
KeyId=阿里云账号AccessKey
# 阿里云账号AccessKeySecret
KeySecret=阿里云账号AccessKeySecret
# 阿里云OSS Bucket的地域节点
OSS_ENDPOINT=阿里云OSS Bucket的地域节点
# 阿里云OSS Bucket的BucketName
BUCKET_NAME=阿里云OSS Bucket的BucketName
评论
0 评论