From eb8a6dfe8dfbf797cf5ba3a5586d1fca8ccefa61 Mon Sep 17 00:00:00 2001 From: okxlin <61420215+okxlin@users.noreply.github.com> Date: Sat, 27 Jun 2026 23:11:20 +0800 Subject: [PATCH] Add Karakeep and Collabora apps Add Karakeep and Collabora as 1Panel v2 local apps with source evidence, strict adapter validation, and moelin/1panel:v2 smoke coverage. --- apps/collabora/README.md | 60 +++++++++ apps/collabora/data.yml | 30 +++++ apps/collabora/latest/.env.sample | 8 ++ apps/collabora/latest/data.yml | 117 +++++++++++++++++ apps/collabora/latest/data/.gitkeep | 0 apps/collabora/latest/docker-compose.yml | 22 ++++ apps/collabora/latest/scripts/.gitkeep | 0 apps/collabora/latest/scripts/init.sh | 3 + apps/collabora/latest/scripts/uninstall.sh | 2 + apps/collabora/latest/scripts/upgrade.sh | 3 + apps/collabora/logo.png | Bin 0 -> 98577 bytes apps/collabora/source-evidence.json | 14 +++ apps/karakeep/README.md | 69 ++++++++++ apps/karakeep/data.yml | 30 +++++ apps/karakeep/latest/.env.sample | 9 ++ apps/karakeep/latest/data.yml | 140 +++++++++++++++++++++ apps/karakeep/latest/data/.gitkeep | 0 apps/karakeep/latest/docker-compose.yml | 63 ++++++++++ apps/karakeep/latest/scripts/.gitkeep | 0 apps/karakeep/latest/scripts/init.sh | 3 + apps/karakeep/latest/scripts/uninstall.sh | 2 + apps/karakeep/latest/scripts/upgrade.sh | 3 + apps/karakeep/logo.png | Bin 0 -> 2909 bytes apps/karakeep/source-evidence.json | 13 ++ 24 files changed, 591 insertions(+) create mode 100644 apps/collabora/README.md create mode 100644 apps/collabora/data.yml create mode 100644 apps/collabora/latest/.env.sample create mode 100644 apps/collabora/latest/data.yml create mode 100644 apps/collabora/latest/data/.gitkeep create mode 100644 apps/collabora/latest/docker-compose.yml create mode 100644 apps/collabora/latest/scripts/.gitkeep create mode 100755 apps/collabora/latest/scripts/init.sh create mode 100755 apps/collabora/latest/scripts/uninstall.sh create mode 100755 apps/collabora/latest/scripts/upgrade.sh create mode 100644 apps/collabora/logo.png create mode 100644 apps/collabora/source-evidence.json create mode 100644 apps/karakeep/README.md create mode 100644 apps/karakeep/data.yml create mode 100644 apps/karakeep/latest/.env.sample create mode 100644 apps/karakeep/latest/data.yml create mode 100644 apps/karakeep/latest/data/.gitkeep create mode 100644 apps/karakeep/latest/docker-compose.yml create mode 100644 apps/karakeep/latest/scripts/.gitkeep create mode 100755 apps/karakeep/latest/scripts/init.sh create mode 100755 apps/karakeep/latest/scripts/uninstall.sh create mode 100755 apps/karakeep/latest/scripts/upgrade.sh create mode 100644 apps/karakeep/logo.png create mode 100644 apps/karakeep/source-evidence.json diff --git a/apps/collabora/README.md b/apps/collabora/README.md new file mode 100644 index 000000000..caf28e492 --- /dev/null +++ b/apps/collabora/README.md @@ -0,0 +1,60 @@ +# Collabora + +## 产品介绍 +Collabora Online Development Edition (CODE) 是基于 LibreOffice 技术的在线文档协作套件,可通过 WOPI 协议与 Nextcloud、ownCloud 等文件系统集成。 + +## 主要功能 +- 在线编辑文本文档、表格和演示文稿 +- 通过 WOPI 与 Nextcloud 等应用集成 +- 提供管理控制台 +- 支持按需配置允许访问的 WOPI 主机和拼写词典 + +## 访问说明 +安装后通过 `http://<服务器 IP>:9980` 访问,实际端口以安装表单中的 `PANEL_APP_PORT_HTTP` 为准。 + +用于 Nextcloud 集成时,请在 Nextcloud Office/Collabora 设置中填写 Collabora 的外部访问地址,并在本应用的 `WOPI_ALIAS_GROUP` 中填写允许访问的 Nextcloud 域名。 + +## Introduction +Collabora Online Development Edition (CODE) is an online office suite based on LibreOffice technology for WOPI integrations such as Nextcloud and ownCloud. + +## Features +- Edit text documents, spreadsheets, and presentations online +- Integrate with Nextcloud and other WOPI applications +- Built-in admin console +- Configurable WOPI host allow list and dictionaries + +## 部署说明 +- 本应用使用官方 Docker 镜像 `collabora/code:latest` 部署。 +- 默认使用 `--o:ssl.enable=false --o:ssl.termination=true`,容器内提供 HTTP,由外部反向代理或 1Panel 网站层处理 HTTPS。 +- 应用分类:工具。 +- 支持架构:amd64、arm64。 +- 可选版本:`latest`。 + +## 端口 +| 变量 | 说明 | 默认值 | 必填 | +| --- | --- | --- | --- | +| PANEL_APP_PORT_HTTP | HTTP 访问端口 | 9980 | 是 | + +## 数据持久化 +本应用默认不挂载业务数据目录。升级或迁移前,请备份外部 WOPI 应用中的文档数据,并记录本应用安装参数。 + +## 参数说明 +| 变量 | 说明 | 默认值 | 必填 | +| --- | --- | --- | --- | +| ADMIN_USERNAME | 管理控制台用户名 | admin | 是 | +| ADMIN_PASSWORD | 管理控制台密码 | 随机生成 | 是 | +| WOPI_ALIAS_GROUP | 允许访问的 WOPI 主机,例如 `https://nextcloud.example.com:443` | 空 | 否 | +| SERVER_NAME | 外部访问域名,反代场景可设置为 Collabora 域名 | 空 | 否 | +| DICTIONARIES | 启用的拼写词典语言列表 | de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru | 是 | +| EXTRA_PARAMS | 传给 coolwsd 的额外启动参数 | --o:ssl.enable=false --o:ssl.termination=true | 是 | + +## 使用说明 +- 如果只用于自测,`WOPI_ALIAS_GROUP` 可以留空;正式接入 Nextcloud 时建议填写明确的 Nextcloud HTTPS 域名。 +- 官方文档示例 `aliasgroup1=https://.*:443` 会允许所有 WOPI 主机连接,仅适合公开演示场景,不建议作为默认生产配置。 +- 如需容器内自签 HTTPS,可调整 `EXTRA_PARAMS`,并同步修改反向代理和探活方式。 + +## 参考资料 +- 官网: +- 项目仓库: +- CODE Docker 文档: +- 官方 Docker 镜像: diff --git a/apps/collabora/data.yml b/apps/collabora/data.yml new file mode 100644 index 000000000..b0f535aef --- /dev/null +++ b/apps/collabora/data.yml @@ -0,0 +1,30 @@ +name: Collabora +tags: + - Tool +title: 可与 Nextcloud 等 WOPI 应用集成的在线文档套件 +description: 可与 Nextcloud 等 WOPI 应用集成的在线文档套件 +additionalProperties: + key: collabora + name: Collabora + tags: + - Tool + shortDescZh: 可与 Nextcloud 等 WOPI 应用集成的在线文档套件 + shortDescEn: Online office suite for WOPI integrations such as Nextcloud + description: + en: Online office suite for WOPI integrations such as Nextcloud + zh: 可与 Nextcloud 等 WOPI 应用集成的在线文档套件 + zh-Hant: 可與 Nextcloud 等 WOPI 應用整合的線上文件套件 + ja: Nextcloud などの WOPI アプリと連携できるオンラインオフィススイート + ko: Nextcloud 같은 WOPI 앱과 연동되는 온라인 오피스 제품군 + ru: Онлайн-офис для интеграций WOPI, включая Nextcloud + ms: Suite pejabat dalam talian untuk integrasi WOPI seperti Nextcloud + pt-br: Suite de escritorio online para integracoes WOPI, como Nextcloud + type: website + crossVersionUpdate: true + limit: 0 + website: https://www.collaboraonline.com/code/ + github: https://github.com/CollaboraOnline/online + document: https://sdk.collaboraonline.com/docs/installation/CODE_Docker_image.html + architectures: + - amd64 + - arm64 diff --git a/apps/collabora/latest/.env.sample b/apps/collabora/latest/.env.sample new file mode 100644 index 000000000..24c4573a7 --- /dev/null +++ b/apps/collabora/latest/.env.sample @@ -0,0 +1,8 @@ +PANEL_APP_PORT_HTTP=9980 +ADMIN_USERNAME=admin +ADMIN_PASSWORD=collabora_admin_password +WOPI_ALIAS_GROUP= +SERVER_NAME= +DICTIONARIES=de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru +EXTRA_PARAMS=--o:ssl.enable=false --o:ssl.termination=true +CONTAINER_NAME=collabora diff --git a/apps/collabora/latest/data.yml b/apps/collabora/latest/data.yml new file mode 100644 index 000000000..2ec0f960e --- /dev/null +++ b/apps/collabora/latest/data.yml @@ -0,0 +1,117 @@ +additionalProperties: + formFields: + - default: 9980 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: HTTP Port + labelZh: HTTP 端口 + label: + en: HTTP Port + zh: HTTP 端口 + zh-Hant: HTTP 埠 + ja: HTTP ポート + ko: HTTP 포트 + ru: HTTP-порт + ms: Port HTTP + pt-br: Porta HTTP + required: true + rule: paramPort + type: number + - default: admin + edit: true + envKey: ADMIN_USERNAME + labelEn: Admin Username + labelZh: 管理员用户名 + label: + en: Admin Username + zh: 管理员用户名 + zh-Hant: 管理員使用者名稱 + ja: 管理者ユーザー名 + ko: 관리자 사용자 이름 + ru: Имя администратора + ms: Nama pengguna pentadbir + pt-br: Usuario administrador + required: true + type: text + - default: collabora_admin_password + edit: true + envKey: ADMIN_PASSWORD + labelEn: Admin Password + labelZh: 管理员密码 + label: + en: Admin Password + zh: 管理员密码 + zh-Hant: 管理員密碼 + ja: 管理者パスワード + ko: 관리자 비밀번호 + ru: Пароль администратора + ms: Kata laluan pentadbir + pt-br: Senha do administrador + random: true + required: true + rule: paramComplexity + type: password + - default: "" + edit: true + envKey: WOPI_ALIAS_GROUP + labelEn: WOPI Alias Group + labelZh: WOPI 允许主机 + label: + en: WOPI Alias Group + zh: WOPI 允许主机 + zh-Hant: WOPI 允許主機 + ja: WOPI 許可ホスト + ko: WOPI 허용 호스트 + ru: Разрешенные хосты WOPI + ms: Hos WOPI yang dibenarkan + pt-br: Hosts WOPI permitidos + required: false + type: text + - default: "" + edit: true + envKey: SERVER_NAME + labelEn: Server Name + labelZh: 服务访问域名 + label: + en: Server Name + zh: 服务访问域名 + zh-Hant: 服務存取網域 + ja: サーバー名 + ko: 서버 이름 + ru: Имя сервера + ms: Nama pelayan + pt-br: Nome do servidor + required: false + type: text + - default: de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru + edit: true + envKey: DICTIONARIES + labelEn: Dictionaries + labelZh: 拼写词典 + label: + en: Dictionaries + zh: 拼写词典 + zh-Hant: 拼字詞典 + ja: 辞書 + ko: 맞춤법 사전 + ru: Словари + ms: Kamus ejaan + pt-br: Dicionarios + required: true + type: text + - default: "--o:ssl.enable=false --o:ssl.termination=true" + edit: true + envKey: EXTRA_PARAMS + labelEn: Extra Parameters + labelZh: 额外启动参数 + label: + en: Extra Parameters + zh: 额外启动参数 + zh-Hant: 額外啟動參數 + ja: 追加起動パラメータ + ko: 추가 시작 매개변수 + ru: Дополнительные параметры запуска + ms: Parameter tambahan + pt-br: Parametros extras + required: true + type: text diff --git a/apps/collabora/latest/data/.gitkeep b/apps/collabora/latest/data/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/apps/collabora/latest/docker-compose.yml b/apps/collabora/latest/docker-compose.yml new file mode 100644 index 000000000..0de72db2b --- /dev/null +++ b/apps/collabora/latest/docker-compose.yml @@ -0,0 +1,22 @@ +services: + collabora: + image: "collabora/code:latest" + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - "${PANEL_APP_PORT_HTTP}:9980" + environment: + - username=${ADMIN_USERNAME} + - password=${ADMIN_PASSWORD} + - aliasgroup1=${WOPI_ALIAS_GROUP} + - server_name=${SERVER_NAME} + - dictionaries=${DICTIONARIES} + - extra_params=${EXTRA_PARAMS} + labels: + createdBy: "Apps" + +networks: + 1panel-network: + external: true diff --git a/apps/collabora/latest/scripts/.gitkeep b/apps/collabora/latest/scripts/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/apps/collabora/latest/scripts/init.sh b/apps/collabora/latest/scripts/init.sh new file mode 100755 index 000000000..2de7e6c39 --- /dev/null +++ b/apps/collabora/latest/scripts/init.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env bash +set -euo pipefail +mkdir -p ./data diff --git a/apps/collabora/latest/scripts/uninstall.sh b/apps/collabora/latest/scripts/uninstall.sh new file mode 100755 index 000000000..ab8a8d674 --- /dev/null +++ b/apps/collabora/latest/scripts/uninstall.sh @@ -0,0 +1,2 @@ +#!/bin/bash +docker-compose down --volumes diff --git a/apps/collabora/latest/scripts/upgrade.sh b/apps/collabora/latest/scripts/upgrade.sh new file mode 100755 index 000000000..9879df4c3 --- /dev/null +++ b/apps/collabora/latest/scripts/upgrade.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env bash +set -euo pipefail +exit 0 diff --git a/apps/collabora/logo.png b/apps/collabora/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..417cbac97a8601fc9db0509e849cf3b70b5c586e GIT binary patch literal 98577 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
+rb7&P$#nV_# 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 U4`mK&WB>pF07*qoM6N<$f|?S1aR2}S literal 0 HcmV?d00001 diff --git a/apps/collabora/source-evidence.json b/apps/collabora/source-evidence.json new file mode 100644 index 000000000..04ab59a04 --- /dev/null +++ b/apps/collabora/source-evidence.json @@ -0,0 +1,14 @@ +{ + "repository": "https://github.com/CollaboraOnline/online", + "dockerDocs": "https://sdk.collaboraonline.com/docs/installation/CODE_Docker_image.html", + "composeFile": "https://sdk.collaboraonline.com/docs/installation/CODE_Docker_image.html", + "imageRegistry": "https://hub.docker.com/r/collabora/code", + "logo": "https://sdk.collaboraonline.com/_static/collabora.svg", + "notes": [ + "Issue request: https://github.com/okxlin/appstore/issues/1607", + "Official CODE Docker docs publish the collabora/code image and show port 9980.", + "Official docs describe aliasgroup1, username, password, dictionaries, server_name, and extra_params as Docker environment variables.", + "The default extra_params disables container-internal SSL for 1Panel HTTP probing and reverse-proxy TLS termination.", + "The public-demo aliasgroup1=https://.*:443 is not used as the default; users should set a concrete WOPI host for production." + ] +} diff --git a/apps/karakeep/README.md b/apps/karakeep/README.md new file mode 100644 index 000000000..87680cb35 --- /dev/null +++ b/apps/karakeep/README.md @@ -0,0 +1,69 @@ +# Karakeep + +## 产品介绍 +Karakeep 是一个自托管的书签、笔记和网页归档应用,支持保存网页、图片、文本内容,并提供全文搜索、浏览器扩展和移动端分享入口。 + +## 主要功能 +- 保存链接、笔记、图片和网页内容 +- 通过 Meilisearch 提供全文搜索 +- 使用 Chrome sidecar 抓取动态网页、截图和归档内容 +- 可选配置 OpenAI API Key 启用自动标签等 AI 功能 + +## 访问说明 +安装后通过 `http://<服务器 IP>:13000` 访问,实际端口以安装表单中的 `PANEL_APP_PORT_HTTP` 为准。 + +`NEXTAUTH_URL` 必须填写为用户实际访问 Karakeep 的完整地址,例如 `https://karakeep.example.com` 或 `http://<服务器 IP>:13000`。 + +## Introduction +Karakeep is a self-hosted app for bookmarks, notes, and web archives. + +## Features +- Save links, notes, images, and web content +- Full-text search powered by Meilisearch +- Chrome sidecar for dynamic page crawling, screenshots, and archival +- Optional OpenAI API key for AI-assisted tagging + +## 部署说明 +- 本应用使用官方 Docker 镜像 `ghcr.io/karakeep-app/karakeep:release` 部署。 +- 按官方 compose 搭配 `gcr.io/zenika-hub/alpine-chrome:124` 和 `getmeili/meilisearch:v1.41.0`。 +- 应用分类:工具。 +- 支持架构:amd64、arm64。 +- 可选版本:`latest`。 + +## 端口 +| 变量 | 说明 | 默认值 | 必填 | +| --- | --- | --- | --- | +| PANEL_APP_PORT_HTTP | HTTP 访问端口 | 13000 | 是 | + +## 数据持久化 +| 变量 | 说明 | 默认值 | 必填 | +| --- | --- | --- | --- | +| APP_DATA_DIR | Karakeep 数据、SQLite 数据库、资产和 Meilisearch 索引目录 | ./data | 是 | + +持久化目录包含: +- `${APP_DATA_DIR}/data:/data` +- `${APP_DATA_DIR}/meilisearch:/meili_data` + +升级或迁移前,请先在 1Panel 中备份上述数据目录。 + +## 参数说明 +| 变量 | 说明 | 默认值 | 必填 | +| --- | --- | --- | --- | +| TZ | 容器时区 | Asia/Shanghai | 是 | +| NEXTAUTH_URL | Karakeep 对外访问地址 | http://1.2.3.4:13000 | 是 | +| NEXTAUTH_SECRET | NextAuth JWT 签名密钥 | 随机生成 | 是 | +| MEILI_MASTER_KEY | Meilisearch 主密钥 | 随机生成 | 是 | +| DISABLE_SIGNUPS | 是否禁止新用户注册 | false | 是 | +| OPENAI_API_KEY | 可选 OpenAI API Key,用于自动标签等 AI 功能 | 空 | 否 | + +## 使用说明 +- 首次安装建议保持 `DISABLE_SIGNUPS=false`,创建管理员账号后再按需改为 `true`。 +- 不配置 `OPENAI_API_KEY` 时,Karakeep 仍可正常保存和搜索内容,只是 AI 自动标签等功能不可用。 +- 官方文档提示 Meilisearch 版本迁移需要参考故障排查说明;升级前请备份数据目录。 + +## 参考资料 +- 官网: +- 项目仓库: +- Docker 安装文档: +- 官方 compose: +- 配置文档: diff --git a/apps/karakeep/data.yml b/apps/karakeep/data.yml new file mode 100644 index 000000000..12499b4fd --- /dev/null +++ b/apps/karakeep/data.yml @@ -0,0 +1,30 @@ +name: Karakeep +tags: + - Tool +title: 自托管书签、笔记和网页归档工具 +description: 自托管书签、笔记和网页归档工具 +additionalProperties: + key: karakeep + name: Karakeep + tags: + - Tool + shortDescZh: 自托管书签、笔记和网页归档工具 + shortDescEn: Self-hosted bookmark, note, and web archive app + description: + en: Self-hosted bookmark, note, and web archive app + zh: 自托管书签、笔记和网页归档工具 + zh-Hant: 自託管書籤、筆記與網頁封存工具 + ja: ブックマーク、メモ、Web アーカイブを保存するセルフホストアプリ + ko: 북마크, 메모, 웹 아카이브를 보관하는 자체 호스팅 앱 + ru: Самостоятельно размещаемое приложение для закладок, заметок и веб-архива + ms: Aplikasi hos sendiri untuk penanda buku, nota dan arkib web + pt-br: Aplicativo auto-hospedado para favoritos, notas e arquivamento da web + type: website + crossVersionUpdate: true + limit: 0 + website: https://karakeep.app/ + github: https://github.com/karakeep-app/karakeep + document: https://docs.karakeep.app/installation/docker + architectures: + - amd64 + - arm64 diff --git a/apps/karakeep/latest/.env.sample b/apps/karakeep/latest/.env.sample new file mode 100644 index 000000000..b1b05481f --- /dev/null +++ b/apps/karakeep/latest/.env.sample @@ -0,0 +1,9 @@ +PANEL_APP_PORT_HTTP=13000 +TZ=Asia/Shanghai +APP_DATA_DIR=./data +NEXTAUTH_URL=http://1.2.3.4:13000 +NEXTAUTH_SECRET=karakeep_nextauth_secret +MEILI_MASTER_KEY=karakeep_meili_master_key +DISABLE_SIGNUPS=false +OPENAI_API_KEY= +CONTAINER_NAME=karakeep diff --git a/apps/karakeep/latest/data.yml b/apps/karakeep/latest/data.yml new file mode 100644 index 000000000..ff06c5e64 --- /dev/null +++ b/apps/karakeep/latest/data.yml @@ -0,0 +1,140 @@ +additionalProperties: + formFields: + - default: 13000 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: HTTP Port + labelZh: HTTP 端口 + label: + en: HTTP Port + zh: HTTP 端口 + zh-Hant: HTTP 埠 + ja: HTTP ポート + ko: HTTP 포트 + ru: HTTP-порт + ms: Port HTTP + pt-br: Porta HTTP + required: true + rule: paramPort + type: number + - default: Asia/Shanghai + edit: true + envKey: TZ + labelEn: Timezone + labelZh: 时区 + label: + en: Timezone + zh: 时区 + zh-Hant: 時區 + ja: タイムゾーン + ko: 시간대 + ru: Часовой пояс + ms: Zon waktu + pt-br: Fuso horario + required: true + type: text + - default: ./data + edit: true + envKey: APP_DATA_DIR + labelEn: Data Directory + labelZh: 数据目录 + label: + en: Data Directory + zh: 数据目录 + zh-Hant: 資料目錄 + ja: データディレクトリ + ko: 데이터 디렉터리 + ru: Каталог данных + ms: Direktori data + pt-br: Diretorio de dados + required: true + type: text + - default: http://1.2.3.4:13000 + edit: true + envKey: NEXTAUTH_URL + labelEn: Public URL + labelZh: 公开访问地址 + label: + en: Public URL + zh: 公开访问地址 + zh-Hant: 公開存取位址 + ja: 公開アクセス URL + ko: 공개 접속 주소 + ru: Публичный URL + ms: URL awam + pt-br: URL publico + required: true + rule: paramExtUrl + type: text + - default: karakeep_nextauth_secret + edit: true + envKey: NEXTAUTH_SECRET + labelEn: NextAuth Secret + labelZh: NextAuth 密钥 + label: + en: NextAuth Secret + zh: NextAuth 密钥 + zh-Hant: NextAuth 金鑰 + ja: NextAuth シークレット + ko: NextAuth 비밀키 + ru: Секрет NextAuth + ms: Rahsia NextAuth + pt-br: Segredo do NextAuth + random: true + required: true + rule: paramComplexity + type: password + - default: karakeep_meili_master_key + edit: true + envKey: MEILI_MASTER_KEY + labelEn: Meilisearch Master Key + labelZh: Meilisearch 主密钥 + label: + en: Meilisearch Master Key + zh: Meilisearch 主密钥 + zh-Hant: Meilisearch 主金鑰 + ja: Meilisearch マスターキー + ko: Meilisearch 마스터 키 + ru: Главный ключ Meilisearch + ms: Kunci induk Meilisearch + pt-br: Chave mestra do Meilisearch + random: true + required: true + type: password + - default: "false" + edit: true + envKey: DISABLE_SIGNUPS + labelEn: Disable New Signups + labelZh: 禁止新用户注册 + label: + en: Disable New Signups + zh: 禁止新用户注册 + zh-Hant: 停用新使用者註冊 + ja: 新規登録を無効化 + ko: 신규 가입 비활성화 + ru: Отключить новые регистрации + ms: Lumpuhkan pendaftaran baharu + pt-br: Desativar novos cadastros + required: true + type: select + values: + - label: "false" + value: "false" + - label: "true" + value: "true" + - default: "" + edit: true + envKey: OPENAI_API_KEY + labelEn: OpenAI API Key + labelZh: OpenAI API 密钥 + label: + en: OpenAI API Key + zh: OpenAI API 密钥 + zh-Hant: OpenAI API 金鑰 + ja: OpenAI API キー + ko: OpenAI API 키 + ru: Ключ OpenAI API + ms: Kunci API OpenAI + pt-br: Chave de API OpenAI + required: false + type: password diff --git a/apps/karakeep/latest/data/.gitkeep b/apps/karakeep/latest/data/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/apps/karakeep/latest/docker-compose.yml b/apps/karakeep/latest/docker-compose.yml new file mode 100644 index 000000000..95d455d04 --- /dev/null +++ b/apps/karakeep/latest/docker-compose.yml @@ -0,0 +1,63 @@ +services: + karakeep: + image: "ghcr.io/karakeep-app/karakeep:release" + container_name: ${CONTAINER_NAME} + restart: always + depends_on: + - karakeep-chrome + - karakeep-meilisearch + networks: + - 1panel-network + - karakeep-network + ports: + - "${PANEL_APP_PORT_HTTP}:3000" + environment: + - TZ=${TZ} + - DATA_DIR=/data + - NEXTAUTH_URL=${NEXTAUTH_URL} + - NEXTAUTH_SECRET=${NEXTAUTH_SECRET} + - MEILI_ADDR=http://karakeep-meilisearch:7700 + - MEILI_MASTER_KEY=${MEILI_MASTER_KEY} + - BROWSER_WEB_URL=http://karakeep-chrome:9222 + - DISABLE_SIGNUPS=${DISABLE_SIGNUPS} + - OPENAI_API_KEY=${OPENAI_API_KEY} + volumes: + - "${APP_DATA_DIR}/data:/data" + labels: + createdBy: "Apps" + + karakeep-chrome: + image: "gcr.io/zenika-hub/alpine-chrome:124" + container_name: ${CONTAINER_NAME}-chrome + restart: always + networks: + - karakeep-network + command: + - --no-sandbox + - --disable-gpu + - --disable-dev-shm-usage + - --remote-debugging-address=0.0.0.0 + - --remote-debugging-port=9222 + - --hide-scrollbars + labels: + createdBy: "Apps" + + karakeep-meilisearch: + image: "getmeili/meilisearch:v1.41.0" + container_name: ${CONTAINER_NAME}-meilisearch + restart: always + networks: + - karakeep-network + environment: + - MEILI_MASTER_KEY=${MEILI_MASTER_KEY} + - MEILI_NO_ANALYTICS=true + volumes: + - "${APP_DATA_DIR}/meilisearch:/meili_data" + labels: + createdBy: "Apps" + +networks: + 1panel-network: + external: true + karakeep-network: + driver: bridge diff --git a/apps/karakeep/latest/scripts/.gitkeep b/apps/karakeep/latest/scripts/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/apps/karakeep/latest/scripts/init.sh b/apps/karakeep/latest/scripts/init.sh new file mode 100755 index 000000000..2de7e6c39 --- /dev/null +++ b/apps/karakeep/latest/scripts/init.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env bash +set -euo pipefail +mkdir -p ./data diff --git a/apps/karakeep/latest/scripts/uninstall.sh b/apps/karakeep/latest/scripts/uninstall.sh new file mode 100755 index 000000000..ab8a8d674 --- /dev/null +++ b/apps/karakeep/latest/scripts/uninstall.sh @@ -0,0 +1,2 @@ +#!/bin/bash +docker-compose down --volumes diff --git a/apps/karakeep/latest/scripts/upgrade.sh b/apps/karakeep/latest/scripts/upgrade.sh new file mode 100755 index 000000000..9879df4c3 --- /dev/null +++ b/apps/karakeep/latest/scripts/upgrade.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env bash +set -euo pipefail +exit 0 diff --git a/apps/karakeep/logo.png b/apps/karakeep/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..a6e80bdb6d31a277e05048c472d1bbea776a0ec1 GIT binary patch literal 2909 zcmai0XIN9&7QG-!69KV-FvP$U-UlfJ2oe)|q)3n!sR|*vDFZ1aHxPo3h$4vMD3%dK z6s3t0WE=}BHdJhs0VzWjQT$L587vGSyqn;F4vz1~O>)j!d!2pO-sjxx^!0Jq(lF2f z06@#r!_6Q5PJ*8;YV+Vvv(X2t0H9LH2@HmUDc%G+pNpn3_)#EQ!WFHpfFM1Ouc#fplp!-JXGTbkHD52(SPbglGr} zH-;x7NJvP9E&={6pT-~&3JMfWLIzWO5w3h8h_FT5qOnK^4FplhU=sY@)_e|zMH%CO$qM9dC{13t1Q|dwY8f7Kg#%P%r}}O5i~>35q8&kxNWzxPc%rs zNsHo(ArcY^gK@6);5ueKqA$Z@a{pH2NLr@t2v1tthUj6W#ii-mNM90&3s z6NM9UUkJV&2^bUX#^HiI5$rArX@y($4>aT})NTfK<;U=a0dQM^aF}9R?j6CCOJjjS z90tUmQJVq0K^|)gnNm_9^6X;7^72x79C$yt8MWXUjD)nqVZK->U>^EoSw{G9!r77;TmaiW6o#leK*rsm)S58oV^>8k@COkX}A5594P z@YQn4Zox?aP}<6Y3o)wz0ARjPyzk*!7w1K(j_0utuxH86n(EO9{pR_jk`ELkTpk^7 zSyNW#G$1U~ZNRgaFLL8bQ7A>>9mwZr349aAQMHPe!bNeBXGa<`_s3F3zHA zu+L;7DY*`QEd^4SDF1icch8@DZgR_5iCOBV=P&mFHrEX9CTh3F=lw=s7Gbu-k1)4g zGyFx#U(war@fD*!)M3M|B26^EBs9iYb|J4fB;&{5Bkr%{QC9X07=|vrDORm{_&k^T z!9FqhUg4%Dl%b(ZSx&rc97v304K6jcB?LUaP-yW1arJgG}zI? z(dRm#t2M%R+tYK*Y^s%ByEw)@y(eK^Ga9op3|q(Rjx4bHZ75D_-tN-j_U=pFvG~W4 zXIn2XzgbX!D`mv+TuSEayT9U_(@?J8u+LV79y@?$A4(k5@}nImt@aTjKivkgX$? z-&s{M%IbP~m3v>T_f}dc7Pf6OqH6oaS16BIHxeqE#Im-u)mu|`&DKRG-68|u0}A;% zu2gNS0Q-o=9jCkQEO}j3XEH%F-LSRKYw)bY9L@Z7>%-8M0~6yKeMd9ZBBKU-oAfqu zJw}&Zm^1RGm2<>>)8^boRqro_NGqhJw<%66qXS(QvBpbii}7BG`$E%z%PckHo{g5b zjatK=JGlW=`}ClE?H@x^jZYhxDi=2+a`(TnbV#b|`~jg{oLVJO{-vj#w^5+ti;3_s zZvW_f5sg(YKDI45!yW3`TBvqBcgN7O=J?TMWRkQ!ZRzR+C0(aarPXFfLy5}8*PT1k zj0xoumHPRPJ%@ZO4V7%Fs~cSJhme7qKcP2sO_G>@Jew>!dM*vf2G#1Gg=3Z3xxWmB z$?hPN`s}x_6QPzU*#uk|gEg%;AB)aYJDwG#jrGjf(mA2-2JE*9eh(NeRPt_cYMKMx z!{9dab)7_DMZ%2jWvcb>?LuuRWvV)fNpQ%&82?@h40$|Jk&==&ZYKNUD}Qi0>@?j8 z|F>fQ?41{=n`0oSb3HTZs}qRvf)pZzu3)e^qY-Z{oG*#1Y$uu1HGJj%*K=z10=1 zds4kWu`WBc>BVGzn7?7M(xZ;hO=zQ$gq7=iEjmcOI|~uYhp#ohHR#$qxbai?)uhr@ zn8xhhbfAz`0F_=Zb$u1F4O8x%I{C8@)panmXhn7STKDnF4ApXz#o_S&ES`{-6cR&!@V zrt+$UY{zH&cI4NU8`qv~_CB8<%`WS_t@Q-cKjFS0Yz&8T8>L0;jjhDC#puU>de>!Z z>g_k%>Xt)$))+l_7ab<82{mt&;YUyBA_EJrr|f#G?^7Zu_xKbP397r{6Fx$buIt^ literal 0 HcmV?d00001 diff --git a/apps/karakeep/source-evidence.json b/apps/karakeep/source-evidence.json new file mode 100644 index 000000000..f9c3c5a86 --- /dev/null +++ b/apps/karakeep/source-evidence.json @@ -0,0 +1,13 @@ +{ + "repository": "https://github.com/karakeep-app/karakeep", + "dockerDocs": "https://github.com/karakeep-app/karakeep/blob/main/docs/docs/02-installation/01-docker.md", + "composeFile": "https://github.com/karakeep-app/karakeep/blob/main/docker/docker-compose.yml", + "configDocs": "https://github.com/karakeep-app/karakeep/blob/main/docs/docs/03-configuration/01-environment-variables.md", + "notes": [ + "Issue request: https://github.com/okxlin/appstore/issues/2709", + "Upstream Docker docs require KARAKEEP_VERSION=release, NEXTAUTH_SECRET, MEILI_MASTER_KEY, and NEXTAUTH_URL.", + "Upstream compose defines web, chrome, and meilisearch services; this adaptation keeps the same topology.", + "Upstream named volumes are mapped under APP_DATA_DIR so 1Panel users can back up data and Meilisearch indexes from one data directory.", + "OpenAI configuration is optional; Karakeep runs without it and disables AI tagging." + ] +}