a simple file server
Project description
1. 主要功能
- 支持用作简单文件列表,无需数据库,无用户管理,分享等功能
- 支持基本网盘功能,需要安装MongoDB及Redis,支持用户注册,文件分享,用户目录可设置公开访问,公共目录等功能
- 用户可设置自己的目录是否完全公开,公开时所有人都可访问,但无法修改文件
- 公共目录内的文件只有管理员可管理,所有人都可公开访问,但无法修改文件
- 大文件分片上传,文件夹上传,剪切板粘贴上传图片
- 离线下载,需要安装
axel
,可粘贴http/https
链接进行下载 - 批量删除、批量分享至公共空间、批量分享、批量取消分享
- 预览功能,支持
.sh
.py
.java
.c
.js
.css
等代码预览,且支持代码高亮,支持.jpg
.txt
.pdf
.md
,.html
等文件格式预览,支持.zip
.tar.gz
.tar.bz2
等压缩格式预览,在可外网访问的环境下,支持.docx
.xlsx
.pptx
等Office文件预览 - 播放功能,支持
.mp4
.flv
.m3u8
等视频格式播放,支持.mp3
.wav
.ogg
等音频格式播放 - 推送功能,支持将
.mobi
.epub
.pdf
.txt
等Kindle支持的文件推送至Kindle - 文件下载,支持文件夹压缩下载
- 支持实时预览,可切换文件列表模式及预览模式(直接打开图片,播放音乐)
- 支持列表及图标布局,图标布局模式下采用瀑布流加载
- 支持切换显示树形目录
- 支持文件搜索,若采用网盘模式时只搜索当前目录及子目录下的文件,否则搜索全部文件
安装部署
确保您的Python
版本>=3.6,一键安装方式如下
pip install kk # 安装
kk # 运行
若采用网盘模式启动,需先安装MongoDB
及Redis
,推荐使用docker
进行安装,同时设置必要的环境变量
若MongoDB
有密码,如用户名密码为admin/123456
,则需设置环境变量MONGO_URI
export MONGO_URI=mongodb://admin:123456@localhost:27017/admin
若Redis
有密码,如密码为123456,则需设置环境变量REDIS_URI
export REDIS_URI=redis://:123456@localhost:6379
要发送邮件,需先设置邮件服务器相关的环境变量
export EMAIL_SENDER=
export EMAIL_SMTP=
export EMAIL_USER=
export EMAIL_PWD=
然后再以网盘模式启动
kk --auth=true
本源码使用的默认数据库名为kk
,第一个注册的用户即为管理员,建议对如下字段建立索引
db.share.ensureIndex({token: 1})
db.share.ensureIndex({name: 1})
db.users.ensureIndex({id: 1}, {unique: 1})
db.users.ensureIndex({username: 1}, {unique: 1})
db.users.ensureIndex({email: 1}, {unique: 1})
其他可选参数
--auth=true # 以网盘模式启动
--tools=true # 显示工具箱,用于画图及制表
--root=. # 设置根目录,默认为当前文件夹
--db=kk # 设置数据库名称,默认为kk
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
kk-0.7.1.tar.gz
(1.5 MB
view hashes)