feat: 新增 AFFiNE (#1954)

This commit is contained in:
wanghe 2024-08-20 17:50:30 +08:00 committed by GitHub
parent 0e92701efe
commit 2c7d36b2bc
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 148 additions and 0 deletions

21
apps/affine/README.md Normal file
View File

@ -0,0 +1,21 @@
# AFFiNE
**AFFiNE** 是一个开源的一体化工作区和操作系统适用于构建知识库的所有构建块以及更多内容——wiki、知识管理、演示和数字资产。它是 Notion 和 Miro 的更好替代品。
## 主要特征:
### 任何形式的块的真正画布,文档和白板现已完全合并。
- 许多编辑器应用都声称自己是生产力的画布,但 AFFiNE 是极少数允许您在无边画布上放置任何构建块的应用之一——富文本、便签、任何嵌入式网页、多视图数据库、链接页面、形状甚至幻灯片。我们拥有一切。
### 多模式 AI 合作伙伴随时准备投入任何工作
- 撰写专业的工作报告?将大纲变成富有表现力且易于展示的幻灯片?将文章总结为结构良好的思维导图?整理工作计划和待办事项?或者... 只需一个提示即可直接绘制和编写原型应用程序和网页有了你AFFiNE AI 可以将您的创造力推向想象的边缘。
### 本地优先、实时协作
- 我们喜欢本地优先的理念即无论使用云端您始终拥有磁盘上的数据。此外AFFiNE 支持在 Web 和跨平台客户端上进行实时同步和协作。
### 自托管并塑造您自己的 AFFiNE
- 您可以自由地管理、自行托管、分叉和构建自己的 AFFiNE。插件社区和第三方模块即将推出。Blocksuite 上还有更多牵引力。查看那里了解如何自行托管 AFFiNE。

19
apps/affine/data.yml Normal file
View File

@ -0,0 +1,19 @@
name: AFFiNE
tags:
- 实用工具
title: 将文档、白板和数据库完全整合的工作空间
description: 将文档、白板和数据库完全整合的工作空间
additionalProperties:
key: affine
name: AFFiNE
tags:
- Tool
shortDescZh: 将文档、白板和数据库完全整合的工作空间
shortDescEn: A workspace with fully merged docs, whiteboards and databases
type: tool
crossVersionUpdate: true
limit: 0
recommend: 0
website: https://affine.pro
github: https://github.com/toeverything/AFFiNE
document: https://docs.affine.pro/docs/self-host-affine

BIN
apps/affine/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@ -0,0 +1,74 @@
additionalProperties:
formFields:
- default: 3010
envKey: PANEL_APP_PORT_HTTP
labelEn: Web Port
labelZh: HTTP 端口
required: true
rule: paramPort
type: number
- default: 5555
envKey: PANEL_APP_PORT_HTTP_5555
labelEn: Port
labelZh: 端口
required: true
rule: paramPort
type: number
- default: ""
edit: true
envKey: AFFINE_ADMIN_EMAIL
labelEn: email
labelZh: 管理员邮箱
required: true
type: text
- default: ""
edit: true
envKey: AFFINE_ADMIN_PASSWORD
labelEn: password
labelZh: 管理员密码
required: true
type: password
- default: ""
envKey: PANEL_DB_HOST
key: postgresql
labelEn: PostgreSQL Database Service
labelZh: PostgreSQL 数据库服务
required: true
type: service
- default: affine
envKey: PANEL_DB_NAME
labelEn: Database
labelZh: 数据库名
random: true
required: true
rule: paramCommon
type: text
- default: affine
envKey: PANEL_DB_USER
labelEn: User
labelZh: 数据库用户
random: true
required: true
rule: paramCommon
type: text
- default: affine
envKey: PANEL_DB_USER_PASSWORD
labelEn: Password
labelZh: 数据库用户密码
random: true
required: true
rule: paramComplexity
type: password
- default: ""
envKey: PANEL_REDIS_HOST
key: redis
labelEn: Redis Service
labelZh: redis 服务
required: true
type: service
- default: ""
disabled: true
envKey: PANEL_REDIS_ROOT_PASSWORD
labelEn: Password
labelZh: redis 密码
type: text

View File

@ -0,0 +1,34 @@
services:
affine:
image: ghcr.io/toeverything/affine-graphql:stable
container_name: ${CONTAINER_NAME}
restart: unless-stopped
ports:
- ${PANEL_APP_PORT_HTTP}:3010
- ${PANEL_APP_PORT_HTTP_5555}:5555
command:
['sh', '-c', 'node ./scripts/self-host-predeploy && node ./dist/index.js']
volumes:
- ./data/storage:/root/.affine/storage
- ./data/config:/root/.affine/config
networks:
- 1panel-network
environment:
- NODE_OPTIONS="--import=./scripts/register.js"
- AFFINE_CONFIG_PATH=/root/.affine/config
- REDiIS_SERVER_HOST=${REDIS_HOST}
- REDIS_SERVER_PORT=6379
- REDIS_SERVER_PASSWORD=${PANEL_REDIS_ROOT_PASSWORD}
- DATABASE_URL=postgres://${PANEL_DB_USER}:${PANEL_DB_USER_PASSWORD}@${PANEL_DB_HOST}:${PANEL_DB_PORT}/${PANEL_DB_NAME}
- NODE_ENV=production
- AFFINE_ADMIN_EMAIL=${AFFINE_ADMIN_EMAIL}
- AFFINE_ADMIN_PASSWORD=${AFFINE_ADMIN_PASSWORD}
logging:
driver: 'json-file'
options:
max-size: '1000m'
labels:
createdBy: "Apps"
networks:
1panel-network:
external: true