自建书签管理应用 Hoarder App
✨ Hoarder App 是一款自建书签管理应用,支持快速保存链接、笔记和图片,并利用AI自动打标签。其特点包括全文搜索、分类管理、批量操作和深色模式,用户可通过 Docker 自部署以控制隐私。应用正在快速迭代开发中,尚未稳定。
官网介绍
https://hoarder.app根据👆上方官网中的信息,Hoarder 是一款专为数据爱好者设计的应用,能够快速保存链接、笔记和图片,并使用AI自动为其打标签以便快速检索。
有如下特点:
- 让用户能够快速保存链接、笔记和图片,提升信息捕捉效率
- 自动获取链接对应的标题、描述和图片,减少手动操作
- 用户可以将书签按列表进行分类排序,帮助更好地组织信息
- 使用利用 AI (支持 ChatGPT 和 Ollama 本地模型)为书签自动打标签(tag)
- 提供全文搜索功能,用户能够快速查找所有书签内容
- 支持自部署,用户可通过 Docker 快速部署从而控制隐私
- 可以进行批量操作,方便管理大量书签的效率
- 支持深色模式,为用户提供更舒适的阅读体验
自部署
Docker Compose
Docker 环境安装此处略去不表,请参考 Docker 官网并根据具体系统进行安装。
https://docs.docker.com/engine/install/compose.yaml 配置如下
services:
web:
image: ghcr.io/hoarder-app/hoarder-web:${HOARDER_VERSION:-release}
restart: unless-stopped
volumes:
- ./data:/data
ports:
- 3000:3000
env_file:
- .env
environment:
REDIS_HOST: redis
MEILI_ADDR: http://meilisearch:7700
DATA_DIR: /data
redis:
image: redis:7.2-alpine
restart: unless-stopped
volumes:
- ./redis:/data
chrome:
image: gcr.io/zenika-hub/alpine-chrome:123
restart: unless-stopped
command:
- --no-sandbox
- --disable-gpu
- --disable-dev-shm-usage
- --remote-debugging-address=0.0.0.0
- --remote-debugging-port=9222
- --hide-scrollbars
meilisearch:
image: getmeili/meilisearch:v1.6
restart: unless-stopped
env_file:
- .env
environment:
MEILI_NO_ANALYTICS: "true"
volumes:
- ./meilisearch:/meili_data
workers:
image: ghcr.io/hoarder-app/hoarder-workers:${HOARDER_VERSION:-release}
restart: unless-stopped
volumes:
- ./data:/data
env_file:
- .env
environment:
REDIS_HOST: redis
MEILI_ADDR: http://meilisearch:7700
BROWSER_WEB_URL: http://chrome:9222
DATA_DIR: /data
OPENAI_API_KEY: sk-
OPENAI_BASE_URL:
depends_on:
web:
condition: service_started根据👆的配置文件,还需要创建.env文件用于配置环境变量,根据实际情况调整
HOARDER_VERSION=release
MEILI_MASTER_KEY=aDwgUyiP+vswsR0Snc+PJIlX5pG9jANPoyuk5ZLlfwObzfnp
NEXTAUTH_URL=Np2ig9jLTA29GCH6oAdRdxwqllue/P+WZqFXGzkhUThJEyKi
NEXTAUTH_SECRET=http://localhost:3000其中 MEILI_MASTER_KEY 和 NEXTAUTH_SECRET 应为随机字符串,建议通过如下 shell 命令生成:
openssl rand -base64 36HOARDER_VERSION 为选用版本,不配置默认为 release,即当前稳定版,NEXTAUTH_URL需配置为当前 web 服务所对应的路径,如 http://localhost:3000,绑定了域名或配置了 Nginx 转发可根据实际情况调整。
之后根据实际情况配置 OPENAI_API_KEY 和 OPENAI_BASE_URL 这两项用于 AI 调用,此处可以使用 https://github.com/songquanpeng/one-api / https://github.com/Calcium-Ion/new-api/ 等类似项目,从而可以接入其他 LLM 。关于 https://github.com/songquanpeng/one-api 和 https://github.com/Calcium-Ion/new-api/ 的安装配置此处不做赘述,可直接参考项目说明文档进行。
以上配置填充并检查无误后即可通过 docker compose up -d 来启动服务端了。
App / 插件 安装
此处直接引用文档