自建书签管理应用 Hoarder App

status
Published
type
Post
slug
self-host-hoarder-app-for-bookmark-manage
date
Apr 5, 2024
tags
Tool
Docker
Config
Share
summary
Hoarder App 是一款自建书签管理应用,支持快速保存链接、笔记和图片,并利用AI自动打标签。其特点包括全文搜索、分类管理、批量操作和深色模式,用户可通过 Docker 自部署以控制隐私。应用正在快速迭代开发中,尚未稳定。

官网介绍

根据👆上方官网中的信息,Hoarder 是一款专为数据爱好者设计的应用,能够快速保存链接、笔记和图片,并使用AI自动为其打标签以便快速检索。
有如下特点:
  • 让用户能够快速保存链接、笔记和图片,提升信息捕捉效率
  • 自动获取链接对应的标题、描述和图片,减少手动操作
  • 用户可以将书签按列表进行分类排序,帮助更好地组织信息
  • 使用利用 AI (支持 ChatGPT 和 Ollama 本地模型)为书签自动打标签(tag)
  • 提供全文搜索功能,用户能够快速查找所有书签内容
  • 支持自部署,用户可通过 Docker 快速部署从而控制隐私
  • 可以进行批量操作,方便管理大量书签的效率
  • 支持深色模式,为用户提供更舒适的阅读体验
💡
根据官网文档提示,该应用正在进行快速迭代开发中,目前尚未稳定。

自部署

Docker Compose

Docker 环境安装此处略去不表,请参考 Docker 官网并根据具体系统进行安装。
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_KEYNEXTAUTH_SECRET 应为随机字符串,建议通过如下 shell 命令生成:
openssl rand -base64 36
HOARDER_VERSION 为选用版本,不配置默认为 release,即当前稳定版,NEXTAUTH_URL需配置为当前 web 服务所对应的路径,如 http://localhost:3000,绑定了域名或配置了 Nginx 转发可根据实际情况调整。
 
之后根据实际情况配置 OPENAI_API_KEY 和 OPENAI_BASE_URL 这两项用于 AI 调用,此处可以使用
one-api
Github
one-api
Owner
songquanpeng
Updated
Aug 8, 2024
/ 等类似项目,从而可以接入其他 LLM 。关于
one-api
Github
one-api
Owner
songquanpeng
Updated
Aug 8, 2024
的安装配置此处不做赘述,可直接参考项目说明文档进行。
 
以上配置填充并检查无误后即可通过 docker compose up -d 来启动服务端了。
 

App / 插件 安装

此处直接引用文档