MikuMikuCloudDrive 是一个基于 Gin 框架开发的云存储系统后端,提供文件上传、下载、目录管理等核心功能。
- 用户认证与授权 (JWT)
- 文件分块上传与断点续传
- 文件下载
- 目录管理
- 创建目录
- 删除目录
- 重命名目录
- 获取目录内容
- 用户管理
- 用户注册/登录/注销
- 用户信息管理
- Swagger API 文档
- Redis 缓存支持
- 日志记录
- 编程语言: Go 1.20+
- Web 框架: Gin
- 数据库: MySQL
- 缓存: Redis
- 认证: JWT
- API 文档: Swagger
- Go 1.20+
- MySQL 5.7+
- Redis 6.0+
-
克隆仓库
git clone https://github.com/yourusername/MikuMikuCloudDrive.git cd MikuMikuCloudDrive
-
配置环境
- 复制配置文件模板
cp config/config.toml.example config/config.toml
- 修改
config/config.toml
中的数据库和 Redis 配置
- 复制配置文件模板
-
安装依赖
go mod tidy
-
初始化数据库
go run main.go --initdb
-
运行项目
go run main.go
-
访问 API 文档
http://localhost:8888/swagger/index.html
项目使用 Swagger 自动生成 API 文档,启动项目后访问:
http://localhost:8888/swagger/index.html
MikuMikuCloudDrive/
├── common/ # 通用组件
├── config/ # 配置文件
├── controllers/ # 控制器
├── core/ # 核心初始化
├── docs/ # Swagger 文档
├── middleware/ # 中间件
├── models/ # 数据模型
├── routes/ # 路由配置
├── services/ # 业务逻辑
├── types/ # 类型定义
├── utils/ # 工具类
├── go.mod
├── go.sum
├── main.go # 入口文件
└── README.md
- 回收站功能
- 文件分享功能
- 文件版本控制
- 文件搜索功能
- 用户配额管理
本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件