# file-system **Repository Path**: nicholasgub/file-system ## Basic Information - **Project Name**: file-system - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-28 - **Last Updated**: 2026-04-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 文件管理系统 这是一个面向内部使用的浏览器文件管理 MVP,采用 FastAPI 后端、React 前端、PostgreSQL 元数据存储和 MinIO 对象存储。 本项目的实现、验证和后续任务执行统一在主工作区根目录 `E:\code\file-system` 下进行。 ## 技术栈 - 前端:React + Vite - 后端:FastAPI + SQLAlchemy - 数据库:PostgreSQL - 对象存储:MinIO - 部署方式:Docker Compose ## 本地验证 ### 后端 ```bash cd backend python -m pytest tests -q ``` ### 前端 ```bash cd frontend npx vitest run npm run build ``` ## Docker 启动 1. 复制 `.env.example` 为 `.env`。 2. 启动整套服务: ```bash docker compose --env-file .env up --build -d ``` ## 服务入口 - 应用:`http://localhost:8080` - MinIO 控制台:`http://localhost:9001` ## 手工冒烟流程 1. 使用 `.env` 中的管理员账号登录。 2. 创建一个文件夹。 3. 在该文件夹中上传一个文本文件。 4. 使用文件名关键词搜索该文件。 5. 预览该文本文件。 6. 下载该文件。 7. 删除该文件。 8. 删除空文件夹。 ## 验证结果 - 后端测试通过 - 前端测试通过 - 前端生产构建通过 - Docker Compose 可以基于 `.env.example` 正确解析配置 - `docker compose --env-file .env.example up --build -d` 能启动 frontend、backend、postgres 和 minio - `http://localhost:8080` 返回前端页面 - `http://localhost:8080/api/health` 返回 `{"status":"ok"}`