简介
什么是 PDFManager ?
PDFManager是一个开源的自托管SSO单点登录。
主要特点
文档注释:支持在 PDF页面上添加评论、高亮和标签,所有注释内容均可全文搜索库组织管理:支持嵌套文件夹、标签和收藏功能,可跟踪文件状态 多用户支持:每个用户拥有独立的文档库,支持本地账户和 OIDC单点登录协作共享:可以邀请其他用户访问任何集合,并支持权限管理 全文搜索:支持搜索文件元数据、页面内容、注释内容和标签 开源免费:基于 MIT协议开源,可免费使用和修改
应用场景
个人文档管理:将个人 PDF文档集中管理,添加标签和注释,方便快速检索团队协作:团队成员共享文档集合,进行协作注释和讨论 学术研究:管理研究论文,添加阅读笔记和标注 企业知识库:建立企业内部文档知识库,支持多用户访问和权限控制 开发者测试:开发人员可以快速搭建测试环境

PDFManager 是一个简单高效的自托管 PDF 管理解决方案,适合需要集中管理文档的个人和团队使用。
安装
在群晖上以 Docker 方式安装。
由于镜像托管在 ghcr.io,群晖 Docker 套件无法直接搜索,需要通过命令行拉取镜像。
本文写作时,
latest版本对应为v0.4.1;

docker cli 安装
如果你熟悉命令行,可能用 docker cli 更快捷
# 新建文件夹 pdfmanager 和 子目录mkdir -p /volume1/docker/pdfmanager/data# 进入 pdfmanager 目录cd /volume1/docker/pdfmanager# 修改目录权限chmod a+rw data# 一键启动docker run -d \ --name=pdfmanager \ --restart=unless-stopped \ -p 8216:8080 \ -v $(pwd)/data:/app/storage \ -e APP_ACCESS_JWT_SECRET=your_secret_here \ -e APP_REFRESH_JWT_SECRET=your_secret_here \ ghcr.io/g0rsthir/pdfmanager:latest# 示例docker run -d \ --name=pdfmanager \ --restart=unless-stopped \ -p 8216:8080 \ -v $(pwd)/data:/app/storage \ -e APP_ACCESS_JWT_SECRET=5b5e3c7a195c710efd07810014f7607fef8deb31e6f9b717b33343266a0a4367 \ -e APP_REFRESH_JWT_SECRET=64b6162818c6e3ab43e3ca292843feaa05659b09cbe28c83f17dd9043c817ac3 \ ghcr.io/g0rsthir/pdfmanager:latest其中
APP_ACCESS_JWT_SECRET和APP_REFRESH_JWT_SECRET可以用openssl rand -hex 32来生成

如果忘记了修改
data目录的权限,会导致打开页面时报错

docker-compose 安装
也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
version:'3.8'services: app:image: ghcr.io/g0rsthir/pdfmanager:latestcontainer_name: pdfmanagerrestart: alwaysports:- "8216:8080"volumes:- ./data:/app/storage# 数据存储environment:- APP_ACCESS_JWT_SECRET=your_secret_here# JWT 访问令牌密钥- APP_REFRESH_JWT_SECRET=your_secret_here# JWT 刷新令牌密钥然后通过 SSH 登录到您的群晖,执行下面的命令:
# 新建文件夹 pdfmanager 和 子目录mkdir -p /volume1/docker/pdfmanager/data# 进入 pdfmanager 目录cd /volume1/docker/pdfmanager# 修改目录权限chmod a+rw data# 将 docker-compose.yml 放入当前目录# 一键启动docker-compose up -d
运行
在浏览器中访问 http://<群晖IP>:8216 即可进入 Web 界面。
首次使用需要创建管理员账户

登录后的主界面

移动到 Library 边上的三个竖点上,可以创建目录和收藏

老苏建了一个 测试 目录

然后就可以开始上传 pdf 文件

随便找了 2 本

可以在线阅读

注意事项
JWT 密钥: APP_ACCESS_JWT_SECRET和APP_REFRESH_JWT_SECRET必须设置,建议使用强随机字符串数据持久化: PDF文档存储在/app/storage卷中,确保定期备份端口冲突:默认使用 8080端口,如果被占用需要修改端口映射安全建议:生产环境建议配置反向代理并启用 HTTPS

参考文档
G0rsthir/pdfmanager: Simple PDF manager - nothing more地址:https://github.com/G0rsthir/pdfmanager
PDF Manager - Docker Image地址:https://ghcr.io/g0rsthir/pdfmanager
@所有人:写文不易,如果你都看到了这里,请点个赞和在看,分享给更多的朋友;为确保你能收到每一篇文章,请主页右上角设置星标。
夜雨聆风