FileCodeBox 是一个基于 FastAPI(后端)与 Vue3(前端)开发的开源文件分享工具,旨在提供简单、高效、安全的文件和文本分享体验。用户可以通过生成随机口令分享文件,接收者只需输入提取码即可下载或查看内容,无需注册或登录,操作直观如同从快递柜取件。项目以轻量简洁为核心,支持快速部署,适合个人用户或小型团队在多种场景下使用。
github地址:https://github.com/vastsa/FileCodeBox.git(截止2025-09-01star数已达7.2k)


应用场景:
临时文件分享:快速分享单个文件,无需注册登录;
文本快速分享:分享代码片断,文本内容等;
匿名文件传输:保护隐私的文件传输方式;
临时文件存储:支持设置过期时间的文件存储;
跨平台传输:在不同设备间快速传输文件;
小型分享服务:搭建私有的文件分享服务;
核心特性:

技术架构
FileCodeBox 的代码结构清晰,适合开发者学习和二次开发。项目目录结构如下:
FileCodeBox/
├── apps/ # 应用代码
│ ├── admin/ # 管理后台
│ └── base/ # 基础功能
├── core/ # 核心功能
├── data/ # 数据目录
└── fcb-fronted/ # 前端代码
- 后端:使用 FastAPI 框架,结合 SQLite3 数据库,轻量高效。核心文件如 main.py 负责初始化应用、数据库连接和后台任务(如定时删除过期文件)。
- 前端:基于 Vue3 和 ElementUI,提供响应式界面和流畅的用户体验。
- 存储引擎:支持本地文件系统存储,并可扩展支持 S3 协议,开发者可根据需求添加新存储引擎。
- 部署方式:支持 Docker 和 Docker Compose 快速部署,兼容 AMD 和 ARM 架构。
本地开发
1、后端开发
python main.py
2、前端开发
cd fcb-fronted
npm install
npm run dev
快速部署
FileCodeBox 支持通过 Docker 进行一键部署,以下是基本步骤:
- 环境准备:确保服务器已安装 Docker。
- 拉取镜像并运行:
- docker run -d –restart=always -p 12345:12345 -v /opt/FileCodeBox/:/app/data –name filecodebox lanol/filecodebox:beta
- 对于国内用户,若镜像拉取困难,可使用备用镜像:
- docker run -d –restart=always -p 12345:12345 -v /opt/FileCodeBox/:/app/data –name filecodebox dc.065065.xyz/lanol/filecodebox:beta
- 访问服务:打开浏览器,访问 http://<服务器IP>:12345,即可使用。
- 管理面板:访问 http://<服务器IP>:12345/#/admin,使用默认密码 FileCodeBox2023 登录,管理文件或修改配置。
- 更新容器:
- docker pull lanol/filecodebox:beta && docker stop filecodebox && docker rm filecodebox && docker run -d –restart=always -p 12345:12345 -v /opt/FileCodeBox/:/app/data –name filecodebox lanol/filecodebox:beta
- 注意:首次安装需查看 Docker 日志获取初始密码和后台地址:
- docker logs filecodebox
- 若需自定义配置,可在 /opt/FileCodeBox/.env 文件中修改参数并重启容器。
注意事项与已知问题
- 文件大小限制:默认配置下,前端限制文件大小为 10MB,尽管后端配置文件支持更大值(如 FILE_SIZE_LIMIT=10485760)。若需支持大文件上传,需调整前端限制或等待官方更新。
- 安全问题:FileCodeBox 2.0 曾因 .env 文件存储明文敏感信息(如 OneDrive 密码和 AWS 密钥)被报告存在潜在信息泄露风险(CVE-2024-34525)。建议用户修改 .env 文件权限,仅允许服务运行用户访问,或避免在公开环境中存储敏感数据。
- HTTPS 配置:目前需通过反向代理(如 Nginx)启用 HTTPS,部分用户在使用 Cloudflare CDN 时遇到 525 错误,建议检查代理配置或直接访问。
- Docker 更新:部分用户反馈 Docker 镜像需手动删除并重新拉取以更新到最新版本。
社区与贡献
FileCodeBox 是一个活跃的开源项目,拥有 664 个 Fork 和 6.6k Star,社区讨论活跃(GitHub Discussions)。开发者可通过以下方式参与:
- 克隆项目:
- git clone https://github.com/vastsa/FileCodeBox.git cd FileCodeBox pip install -r requirements.txt python main.py
- 提交 Issue:在 GitHub 上反馈问题或提出功能建议。
- 贡献代码:项目欢迎 PR,尤其是对大文件上传、HTTPS 支持等功能的改进。
免责声明
本项目开源仅供学习使用,不得用于任何违法用途,否则后果自负,与推荐者无关。使用时请保留项目地址和版权信息。