自托管万能书签Karakeep部署教程:AI智能收藏管理,配置帕斯内网穿透实现公网远程访问你的私人知识库
作者
小编
发布时间

项目介绍
Karakeep(原名 Hoarder)是一个自托管的万能书签应用,专为数据收集爱好者打造,融合了 AI 智能功能。这是一个功能强大的'稍后阅读'应用,让你可以轻松收藏网页链接、保存笔记、存储图片和 PDF 文件。
Karakeep 基于 NextJS、Drizzle、NextAuth、tRPC 等现代技术栈构建,界面美观现代,支持深色模式。项目最大的亮点是集成了 AI 自动标签和摘要功能,支持 OpenAI 和本地 Ollama 模型,让你的收藏内容自动分类整理。
主要特色功能包括:自动获取链接标题和描述、全文搜索、OCR 文字识别、全页面归档防止链接失效、视频自动归档、RSS 订阅源自动收集、浏览器扩展快速收藏、移动端 APP、SSO 单点登录、多语言支持等。无论是技术文章、新闻资讯还是各种资源,都能完美管理。
项目地址: 点我跳转
部署安装
如需在外也打开项目需要配置内网穿透使用,点击前往 帕斯内网穿透,先注册好账号备用。
复制下列的配置文件
1services:2 web:3 image: ghcr.io/karakeep-app/karakeep:${KARAKEEP_VERSION:-release}4 restart: unless-stopped5 volumes:6 - data:/data7 ports:8 - 3000:30009 env_file:10 - .env11 environment:12 MEILI_ADDR: http://meilisearch:770013 BROWSER_WEB_URL: http://chrome:922214 DATA_DIR: /data15 chrome:16 image: gcr.io/zenika-hub/alpine-chrome:12417 restart: unless-stopped18 command:19 - --no-sandbox20 - --disable-gpu21 - --disable-dev-shm-usage22 - --remote-debugging-address=0.0.0.023 - --remote-debugging-port=922224 - --hide-scrollbars25 meilisearch:26 image: getmeili/meilisearch:v1.13.327 restart: unless-stopped28 env_file:29 - .env30 environment:31 MEILI_NO_ANALYTICS: 'true'32 volumes:33 - meilisearch:/meili_data3435volumes:36 meilisearch:37 data:
打开飞牛 NAS 或其他的 NAS 设备

项目名称可以随便填,点击创建 docker-compose.yml

点击 Compose -> 新建项目
同时需要创建一个 .env 环境变量文件,内容如下:
1KARAKEEP_VERSION=release2NEXTAUTH_SECRET=your_super_random_string_here3MEILI_MASTER_KEY=another_random_string_here4NEXTAUTH_URL=http://你的NAS内网IP:30005OPENAI_API_KEY=你的OpenAI密钥(可选)
这里需要修改 NEXTAUTH_SECRET 和 MEILI_MASTER_KEY 为随机字符串,NEXTAUTH_URL 改为你的实际访问地址。如果需要 AI 自动标签功能,请填入 OpenAI API 密钥。
如果提示端口被占用可以修改 3000:3000 中冒号前面的端口号,但是需要保持格式正确。
创建成功后可以访问 ip:3000 到这里就可以正常显示项目了
穿透公网
打开帕斯内网穿透控制台,点击隧道管理-隧道列表

点击创建新隧道
隧道节点可以随便选,一般选个负载低的就可以

接下来填写信息,隧道名称可以随便填写
本地 IP 默认就可以
传输协议可以选择 TCP 也可以选择 HTTP/HTTPS
HTTP 就是域名的形式,教程以使用 TCP 为演示
本项目中如果没有修改端口的话默认是 3000 端口,这里本地端口就填 3000
远程端口可以留空也可以自定义。下图仅做参考,请按照实际项目端口添加。

填写完毕点击确定
点击刚才创建好的隧道,点击获取配置文件

回到飞牛 NAS,点击应用中心下载 frpc 客户端

打开后粘贴刚才复制的配置文件,点击确定即可
复制帕斯内网穿透控制台的访问 IP 和端口
可以看到已经正常穿透成功了
本篇教程结束