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 000000000..417cbac97 Binary files /dev/null and b/apps/collabora/logo.png differ 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 000000000..a6e80bdb6 Binary files /dev/null and b/apps/karakeep/logo.png differ 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." + ] +}