SnapOtter:

一款开源的、注重隐私的文件处理平台。为用户提供一个本地的多功能工具集,让你的文件始终掌握在自己手里,而不是依赖第三方云服务。

图片

核心特点:

  • 多功能工具集:支持超过 200 种处理工具,涵盖 图片、视频、音频、PDF 和文件。
  • 隐私优先:强调“你的文件属于你”,避免数据外泄。
  • AI 加持:集成了 AI 能力,提升文件处理的智能化体验。
  • 自托管/隔离环境:适合在 NAS、服务器或本地环境部署,满足对数据安全和独立性的需求。
  • 开放源代码:托管在 GitHub,方便开发者参与和扩展。

安装

Docker Compose(快速体验版,部署这个就行)

1
2
3
4
5
6
7
8
9
services:
snapotter:
image: snapotter/snapotter:latest
container_name: snapotter
ports:
- 1349:1349
volumes:
- ./data:/data
restart: always

Docker Compose(生产版)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
services:
snapotter:
image: snapotter/snapotter:latest
container_name: snapotter
ports:
- 1349:1349
environment:
- DATABASE_URL=postgres://snapotter:snapotter@postgres:5432/snapotter
- REDIS_URL=redis://redis:6379
volumes:
- ./data:/data
depends_on: [postgres, redis]
restart: unless-stopped

postgres:
image: postgres:17-alpine
container_name: postgres
environment:
- POSTGRES_USER=snapotter
- POSTGRES_PASSWORD=snapotter
- POSTGRES_DB=snapotter
volumes:
- ./pgdata:/var/lib/postgresql/data
restart: unless-stopped

redis:
image: redis:8-alpine
container_name: redis
volumes:
- ./redisdata:/data
restart: unless-stopped

参数说明(更多参数建议去看文档)

:::
DATABASE_URL(环境变量):PostgreSQL 连接字符串

REDIS_URL(环境变量):Redis 连接字符串

POSTGRES_USER(环境变量):数据库用户名

POSTGRES_PASSWORD(环境变量):数据库密码

POSTGRES_DB(环境变量):数据库名称

:::

使用

浏览器中输入 http://NAS的IP:1349 就能看到界面

图片

输入默认用户名和密码(admin/admin)

图片

登录后会自动跳转到修改密码页面,按要求修改

图片

修改完成,这里跳过就行

图片

项目内置了 241 个工具,覆盖图片、视频、音频、PDF、文件五大类(其实还有 AI 相关功能,需要显卡和额外配置参数)

图片

TIP:功能实在是太多了,大家可以简单看看有没有自己想要的功能,下面我也会简单测试常用的几个功能

图片

支持多种图片格式转换

图片

支持在线修剪视频

图片

也可以对音频时长进行修剪

图片

非常便捷的将 PDF 转为图片

图片

将 Markdown 转 HTML,效果也都还不错

图片

资源占用情况,对内存需求会大一些

图片

总结

SnapOtter 是一款开源的文件处理平台,内置 241 个工具,覆盖图片、视频、音频、PDF、文件五大类——格式转换、压缩裁剪、PDF 转图片、视频修剪、Markdown 转 HTML,日常文件处理基本全覆盖。最大的优势是文件全程不离开本地,不会上传到第三方云端,隐私无忧。快速体验版部署极简一个容器就跑起来,生产版则需要额外配置 PostgreSQL 和 Redis。内存占用偏高,NAS 内存不充裕的需要留意。如果你不想每次处理文件都上传到在线工具,部署一个挺实用。