diff --git a/.github/README.md b/.github/README.md index bee99636..f50bd2eb 100644 --- a/.github/README.md +++ b/.github/README.md @@ -38,6 +38,7 @@ |:--:|:------------------------------------------------------------------------------------------------:|:-----------------------:|:-------------------------------------------------------------:|:---------------------------------------------------------------------|:--------:| | 🟢 | | 异次元店铺系统V3 | https://faka.wiki/ | 二次元发卡系统 | | | 🟢 | | 异次元店铺系统V4 | https://wiki.mcy.im/ | 二次元发卡系统 | | +| 🟢 | | AFFiNE | https://affine.pro/ | AFFiNE是一个具有完全合并文档、白板和数据库的工作空间 | | | 🟢 | | AList | https://alist.nn.ci/ | 一款支持多重存储的文件列表程序 | | | 🟢 | | AList-Aria2 | https://alist.nn.ci/ | 【含Aria2插件版】一款支持多重存储的文件列表程序 | | | 🟢 | | AList-FFmpeg | https://alist.nn.ci/ | 【含FFmpeg插件版】一款支持多重存储的文件列表程序 | | diff --git a/README.md b/README.md index 8e175981..2a5d6aa4 100644 --- a/README.md +++ b/README.md @@ -33,6 +33,7 @@ |:--:|:------------------------------------------------------------------------------------------------:|:-----------------------:|:-------------------------------------------------------------:|:---------------------------------------------------------------------|:--------:| | 🟢 | | 异次元店铺系统V3 | https://faka.wiki/ | 二次元发卡系统 | | | 🟢 | | 异次元店铺系统V4 | https://wiki.mcy.im/ | 二次元发卡系统 | | +| 🟢 | | AFFiNE | https://affine.pro/ | AFFiNE是一个具有完全合并文档、白板和数据库的工作空间 | | | 🟢 | | AList | https://alist.nn.ci/ | 一款支持多重存储的文件列表程序 | | | 🟢 | | AList-Aria2 | https://alist.nn.ci/ | 【含Aria2插件版】一款支持多重存储的文件列表程序 | | | 🟢 | | AList-FFmpeg | https://alist.nn.ci/ | 【含FFmpeg插件版】一款支持多重存储的文件列表程序 | | diff --git a/apps/affine/README.md b/apps/affine/README.md new file mode 100644 index 00000000..5f98c8ba --- /dev/null +++ b/apps/affine/README.md @@ -0,0 +1,16 @@ +# AFFiNE + +AFFiNE是一个具有完全合并文档、白板和数据库的工作空间 + +![AFFiNE](https://file.lifebus.top/imgs/affine_cover.png) + +![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue) + +## 简介 + +AFFiNE 是一个开源的全能工作空间和操作系统,用于组装您的知识库以及更多——维基、知识管理、演示和数字资产。它是 Notion 和 Miro +的更好替代品。 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/apps/affine/data.yml b/apps/affine/data.yml new file mode 100644 index 00000000..04eedd30 --- /dev/null +++ b/apps/affine/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: affine + name: AFFiNE + tags: + - WebSite + - Local + shortDescZh: AFFiNE是一个具有完全合并文档、白板和数据库的工作空间 + shortDescEn: AFFiNE is a workspace with fully merged docs, whiteboards and databases. + type: website + crossVersionUpdate: true + limit: 0 + website: https://affine.pro/ + github: https://github.com/toeverything/AFFiNE/ + document: https://docs.affine.pro/docs/code-of-conduct/ diff --git a/apps/affine/logo.png b/apps/affine/logo.png new file mode 100644 index 00000000..72d04e3c Binary files /dev/null and b/apps/affine/logo.png differ diff --git a/apps/affine/stable-1623f5d/data.yml b/apps/affine/stable-1623f5d/data.yml new file mode 100644 index 00000000..bb37886e --- /dev/null +++ b/apps/affine/stable-1623f5d/data.yml @@ -0,0 +1,183 @@ +additionalProperties: + formFields: + - child: + default: "" + envKey: PANEL_POSTGRES_SERVICE + required: true + type: service + default: postgresql + envKey: PANEL_POSTGRES_TYPE + labelZh: Postgres 服务 (前置检查) + labelEn: Postgres Service (Pre-check) + required: true + type: apps + values: + - label: PostgreSQL + value: postgresql + - child: + default: "" + envKey: PANEL_REDIS_SERVICE + required: true + type: service + default: redis + envKey: PANEL_REDIS_TYPE + labelZh: Redis 服务 (前置检查) + labelEn: Redis Service (Pre-check) + required: true + type: apps + values: + - label: Redis + value: redis + - default: "/home/affine" + edit: true + envKey: AFFINE_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 3010 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: 5555 + edit: true + envKey: PANEL_APP_PORT_COMMUNICATION + labelZh: 通讯端口 + labelEn: Communication port + required: true + rule: paramPort + type: number + - default: "http://127.0.0.1:3010" + edit: true + envKey: AFFINE_SERVER_EXTERNAL_URL + labelZh: 服务外部地址 + labelEn: Service external address + required: true + type: text + - default: "false" + edit: true + envKey: AFFINE_SERVER_HTTPS + labelZh: 是否启用 HTTPS + labelEn: Enable HTTPS + required: true + type: select + values: + - label: 已开启 + value: "true" + - label: 未开启 + value: "false" + - default: "smtp.163.com" + edit: true + envKey: MAILER_HOST + labelZh: SMTP 服务器地址 + labelEn: SMTP server address + required: true + type: text + - default: 465 + edit: true + envKey: MAILER_PORT + labelZh: SMTP 服务器端口 + labelEn: SMTP server port + required: true + rule: paramPort + type: number + - default: "" + edit: true + envKey: MAILER_SENDER + labelZh: 邮件发送者 + labelEn: Email sender + required: true + type: text + - default: "" + edit: true + envKey: MAILER_USER + labelZh: SMTP 用户名 + labelEn: SMTP username + required: true + type: text + - default: "" + edit: true + envKey: MAILER_PASSWORD + labelZh: SMTP 密码 + labelEn: SMTP password + required: true + type: password + - default: "127.0.0.1" + edit: true + envKey: POSTGRES_HOST + labelZh: 数据库 主机地址 + labelEn: Database Host + required: true + type: text + - default: 5432 + edit: true + envKey: POSTGRES_PORT + labelZh: 数据库 端口 + labelEn: Database Port + required: true + rule: paramPort + type: number + - default: "affine" + edit: true + envKey: POSTGRES_NAME + labelZh: 数据库 名称 + labelEn: Database Name + required: true + rule: paramCommon + type: text + - default: "affine" + edit: true + envKey: POSTGRES_USER + labelZh: 数据库 用户名 + labelEn: Database Username + required: true + type: text + - default: "" + edit: true + envKey: POSTGRES_PASSWORD + labelZh: 数据库 密码 + labelEn: Database Password + random: true + required: true + rule: paramComplexity + type: password + - default: "127.0.0.1" + edit: true + envKey: REDIS_SERVER_HOST + labelZh: Redis 主机 + labelEn: Redis Host + required: true + type: text + - default: 6379 + edit: true + envKey: REDIS_SERVER_PORT + labelZh: Redis 端口 + labelEn: Redis Port + required: true + rule: paramPort + type: number + - default: 0 + edit: true + envKey: REDIS_SERVER_DATABASE + labelZh: Redis 索引 (0-20) + labelEn: Redis Index (0-20) + required: true + type: number + - default: "" + edit: true + envKey: REDIS_SERVER_USER + labelZh: Redis 用户 + labelEn: Redis User + required: false + type: text + - default: "" + edit: true + envKey: REDIS_SERVER_PASSWORD + labelZh: Redis 密码 + labelEn: Redis Password + required: false + type: password diff --git a/apps/affine/stable-1623f5d/docker-compose.yml b/apps/affine/stable-1623f5d/docker-compose.yml new file mode 100644 index 00000000..fdf9d449 --- /dev/null +++ b/apps/affine/stable-1623f5d/docker-compose.yml @@ -0,0 +1,35 @@ +networks: + 1panel-network: + external: true + +services: + affine: + image: ghcr.io/toeverything/affine-graphql:stable-1623f5d + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:3010 + - ${PANEL_APP_PORT_COMMUNICATION}:5555 + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${AFFINE_ROOT_PATH}/config:/root/.affine/config + - ${AFFINE_ROOT_PATH}/storage:/root/.affine/storage + environment: + - NODE_OPTIONS="--import=./scripts/register.js" + - AFFINE_CONFIG_PATH=/root/.affine/config + - REDIS_SERVER_HOST=redis + - DATABASE_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_NAME} + - NODE_ENV=production + - TELEMETRY_ENABLE=false + - AFFINE_SERVER_HOST=localhost + - AFFINE_SERVER_PORT=3010 + - AFFINE_SERVER_HTTPS=false + - AFFINE_SERVER_EXTERNAL_URL=http://127.0.0.1:3010 + command: + [ 'sh', '-c', 'node ./scripts/self-host-predeploy && node ./dist/index.js' ] diff --git a/apps/affine/stable-1623f5d/envs/default.env b/apps/affine/stable-1623f5d/envs/default.env new file mode 100644 index 00000000..cd05f46e --- /dev/null +++ b/apps/affine/stable-1623f5d/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/apps/affine/stable-1623f5d/envs/global.env b/apps/affine/stable-1623f5d/envs/global.env new file mode 100644 index 00000000..e10989fe --- /dev/null +++ b/apps/affine/stable-1623f5d/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/apps/affine/stable-1623f5d/scripts/init.sh b/apps/affine/stable-1623f5d/scripts/init.sh new file mode 100644 index 00000000..07fb8c3f --- /dev/null +++ b/apps/affine/stable-1623f5d/scripts/init.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/affine/stable-1623f5d/scripts/uninstall.sh b/apps/affine/stable-1623f5d/scripts/uninstall.sh new file mode 100644 index 00000000..c86c4fbc --- /dev/null +++ b/apps/affine/stable-1623f5d/scripts/uninstall.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/affine/stable-1623f5d/scripts/upgrade.sh b/apps/affine/stable-1623f5d/scripts/upgrade.sh new file mode 100644 index 00000000..07fb8c3f --- /dev/null +++ b/apps/affine/stable-1623f5d/scripts/upgrade.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi