今天分享一个自建书签应用karakeep的部署,我一直都有收集好的文章和网页的习惯,一般是用wallabag来剪辑网页保留。但是wallabag的搜索分类功能不太能看,所以在网上看看有没有其他的替代,就发现了karakeep这个应用。
Karakeep(前身为 Hoarder)是一款可自托管的 “万物皆可收藏” 应用,为那些数据囤积者融入了些许 AI 功能。
Karakeep的特色
🔗 收藏链接、记录简单笔记并存储图片和 PDF。⬇️ 自动抓取链接的标题、描述和图片。📋 将书签分类到列表中。🔎 对所有存储的内容进行全文搜索。✨ 基于 AI(即 ChatGPT)的自动标记和摘要功能,支持使用 Ollama 的本地模型!🤖 基于规则的引擎,用于自定义管理。🎆 内置 OCR 功能,可从图片中提取文本。🔖 提供 Chrome 插件和 Firefox 扩展,方便快速收藏。📱 支持 iOS 应用和 Android 应用。📰 从 RSS 订阅源自动囤积内容。🔌 提供 REST API 接口。🌐 多语言支持。🖍️ 标记并存储囤积内容中的重点部分。🗄️ 使用 monolith 进行全页归档,防止链接失效;通过 youtube-dl 自动归档视频。☑️ 支持批量操作。🔐 支持单点登录(SSO)。🌙 支持深色模式。
💾 优先支持自托管。
看到这么多特色功能是不是很动心,那么我们就开始自托管的部署吧。之前也分享过,我入手了一个绿联的DXP4800,现在我的应用都部署在上面了,所以下面的介绍都是基于绿联的系统来的,其实原理是通用的哈。另外就是官方的docker-compose虽然写的很详细,但其实也有几个小坑,所以也分享下部署过程给大家避避坑。
1.在docker文件夹建立karakeep的文件夹,并在karakeep文件夹里建立data和meilisearch的文件夹


2.在本地电脑建立一个.evn的文件,并填入以下内容。这个是一个小坑,这个是环境变量的配置文件,如果没有的话,容器是跑不起来的。
# See https://docs.karakeep.app/configuration for more information
DATA_DIR=/data
MEILI_ADDR=http://127.0.0.1:7700
MEILI_MASTER_KEY=[generate with ]
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=[generate with ]

建立好后,上传到docker/karakeep这个目录。
3.去绿联的docker建立新项目。用docker-compose代码的方式来建立,代码如下。这里也有个坑,就是有两个镜像用官方的那个docker-compose代码是下载不到的,所以我挂了镜像代理。大家直接按这个来就可以了,无须更改。
services: web: image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/karakeep-app/karakeep:0.25.0
restart: unless-stopped
volumes:
# By default, the data is stored in a docker volume called "data".
# If you want to mount a custom directory, change the volume mapping to:
# - /path/to/your/directory:/data
- ./data:/data
ports:
- 3000:3000
env_file:
- .env
environment:
MEILI_ADDR: http://meilisearch:7700
BROWSER_WEB_URL: http://chrome:9222
# OPENAI_API_KEY: ...
# You almost never want to change the value of the DATA_DIR variable.
# If you want to mount a custom directory, change the volume mapping above instead.
DATA_DIR: /data # DON'T CHANGE THIS
chrome:
image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/zenika/alpine-chrome:124
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.13.3
restart: unless-stopped
env_file:
- .env
environment:
MEILI_NO_ANALYTICS: "true"
volumes:
- ./meilisearch:/meili_data
volumes:
meilisearch:
data:


正常情况,一下就建立好了。
4.因为我想公网访问,所以去lucky做个反代。内网的端口是3000

5.现在输入公网的地址就可以正常访问了。按提示注册就可以了。
语言
6.设置语言为中文,点击右上角的小图标,在options里可以设置成中文。

7.去下载安装浏览器的插件,并设置。填入自托管的服务器地址,下一步用用户名+密码或者API的方式登录插件就可以了。我用的是用户名+密码的方式。


8.设置好就可以开始收藏网页了。看到喜欢的网页点击插件图标就可以了。


到这里安装就结束了。目前这个karakeep的功能我还在学习探索,也欢迎大家留言指教交流。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
