千山
千山QIANSHAN STUDIO

QIANSHAN WORKS · 功能介绍与部署方式

千山文件整理

本地运行的 NAS 文件整理与管理工具——隐私优先,数据不出本地,跑在你自己的 Docker 里。

v0.1.0 Python · FastAPI Vue 3 · Vite Docker / Docker Compose x86_64 GitHub ↗

解决什么问题

NAS 用久了容易堆积成一团乱——目录混乱、重复文件占空间、说不清哪些文件还有用、想分享一个文件给别人又嫌麻烦。千山文件整理就是为了这几件事而做的收纳工具,所有处理都在本地完成,不上传任何第三方服务。

功能一览

目录管理

添加/编辑扫描目录,默认禁止扫描系统目录,路径白名单校验。

文件扫描

后台递归扫描,统计数量/大小/类型,进度可视化,结果入库避免重复扫描。

自动整理

按类型/关键词/大小等规则分类,两阶段模式:先预览再执行,不默认删除。

重复文件检测

先按大小筛选、再 SHA-256 精确比对,分组展示占用空间与建议保留项。

空间分析

总量/目录/类型多维统计,最大文件排行,可清理空间预估。

文件分享

随机高熵链接,可设有效期/密码/下载次数,默认仅局域网可访问。

回收站

所有删除先进回收站,可恢复/永久删除,删除前二次确认。

操作日志

扫描、整理、移动、回收等关键操作全部留痕,可追溯。

设计原则

部署方式

  1. 获取代码

    git clone https://github.com/GITGIT816/qianshan-files.git
    cd qianshan-files
  2. 配置环境变量

    复制示例文件,按需修改数据根路径。

    cp .env.example .env
    # 编辑 .env,确认 DATA_ROOT 与挂载路径对应
  3. 挂载你的真实数据目录

    编辑 docker-compose.yml,把 /你的NAS目录:/data 换成实际路径,可挂多个。

    volumes:
      - ./config:/app/config
      - ./database:/app/database
      - ./recycle-bin:/app/recycle-bin
      - ./logs:/app/logs
      - /你的NAS目录:/data
  4. 启动

    docker compose up -d

    默认监听 8000 端口,可在 compose 文件里改成任意宿主机端口。

关于公网访问:千山文件整理目前没有内置账号登录,设计上默认只在局域网内使用。如果要把它接到公网域名,务必自己在前面加一层访问控制(HTTP Basic Auth、Cloudflare Access 或反向代理层认证),不要在没有防护的情况下直接暴露公网。