feat: 新增 NocoDB (#1882)

This commit is contained in:
wanghe 2024-08-06 15:55:32 +08:00 committed by GitHub
parent c5ed193763
commit e94179ea4f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 126 additions and 0 deletions

View File

@ -0,0 +1,52 @@
additionalProperties:
formFields:
- child:
default: ""
envKey: PANEL_DB_HOST
required: true
type: service
default: mysql
edit: true
envKey: PANEL_DB_TYPE
labelZh: 数据库 服务
labelEn: Database Service
required: true
type: apps
values:
- label: MySQL
value: mysql
- label: PostgreSQL
value: postgresql
- label: MariaDB
value: mariadb
- default: nocodb
envKey: PANEL_DB_NAME
labelEn: Database
labelZh: 数据库名
random: true
required: true
rule: paramCommon
type: text
- default: nocodb
envKey: PANEL_DB_USER
labelEn: User
labelZh: 数据库用户
random: true
required: true
rule: paramCommon
type: text
- default: nocodb
envKey: PANEL_DB_USER_PASSWORD
labelEn: Password
labelZh: 数据库用户密码
random: true
required: true
rule: paramComplexity
type: password
- default: 8080
envKey: PANEL_APP_PORT_HTTP
labelEn: Port
labelZh: 端口
required: true
rule: paramPort
type: number

View File

@ -0,0 +1,18 @@
services:
nocodb:
image: nocodb/nocodb:0.251.3
container_name: ${CONTAINER_NAME}
restart: always
networks:
- 1panel-network
ports:
- ${PANEL_APP_PORT_HTTP}:8080
environment:
NC_DB: "${PANEL_DB_TYPE}://${PANEL_DB_HOST}:${PANEL_DB_PORT}?u=${PANEL_DB_USER}&p=${PANEL_DB_USER_PASSWORD}&d=${PANEL_DB_NAME}"
volumes:
- ./data:/usr/app/data
labels:
createdBy: "Apps"
networks:
1panel-network:
external: true

View File

@ -0,0 +1,22 @@
#!/bin/bash
ENV_FILE=".env"
if [ -f "$ENV_FILE" ]; then
PANEL_DB_TYPE=$(grep '^PANEL_DB_TYPE=' "$ENV_FILE" | cut -d '=' -f 2 | tr -d '"')
if [ "$PANEL_DB_TYPE" == "postgresql" ]; then
NEW_DB_TYPE="pg"
elif [ "$PANEL_DB_TYPE" == "mysql" ] || [ "$PANEL_DB_TYPE" == "mariadb" ]; then
NEW_DB_TYPE="mysql2"
else
echo "Unsupported PANEL_DB_TYPE value: $PANEL_DB_TYPE"
exit 1
fi
sed -i "s/^PANEL_DB_TYPE=.*/PANEL_DB_TYPE=\"$NEW_DB_TYPE\"/" "$ENV_FILE"
else
echo ".env file not found!"
exit 1
fi

15
apps/nocodb/README.md Normal file
View File

@ -0,0 +1,15 @@
# NocoDB
**NocoDB** 是一个开源的无代码No-Code数据库平台它使得用户能够通过图形化界面创建、管理和操作数据库而无需编写代码。NocoDB 旨在简化数据管理过程,提供一个可视化的用户界面来处理数据库中的数据,支持与各种数据库系统的集成。
## 主要功能:
- **无代码数据库管理**:提供直观的图形化界面,用户可以通过拖放操作来管理数据库表和字段,无需编写 SQL 语句或进行复杂的设置。
- **多种数据库支持**:支持多种主流数据库系统,包括 MySQL、PostgreSQL、SQL Server 和 SQLite使用户能够轻松连接和管理各种数据源。
- **表格视图和数据操作**:允许用户以表格视图查看和编辑数据,提供类似电子表格的操作体验,方便数据的查看、修改和过滤。
- **自定义视图和过滤器**:用户可以创建自定义视图,应用过滤器和排序选项,以满足特定的数据查看和操作需求。
- **表单和视图设计**:支持创建自定义表单和视图,用户可以根据需要设计数据输入表单和数据展示界面。
- **API 接口生成**:自动生成 RESTful API 接口,使得用户能够通过 API 访问和操作数据库中的数据,方便与其他应用和系统集成。
- **用户权限管理**:提供灵活的权限管理功能,允许管理员为不同的用户和用户组设置访问权限和操作权限,确保数据安全性。
- **自动化和集成**:支持与第三方服务和应用的集成,提供自动化操作和工作流的功能,帮助用户实现数据的自动化处理和管理。
- **审计和日志记录**:记录数据操作的日志,提供审计功能,帮助用户跟踪和审查数据的变更历史和操作记录。

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

@ -0,0 +1,19 @@
name: NocoDB
tags:
- 数据库
title: 无代码数据库平台
description: 无代码数据库平台
additionalProperties:
key: nocodb
name: NocoDB
tags:
- Database
shortDescZh: 无代码数据库平台
shortDescEn: Code-free database platform
type: tool
crossVersionUpdate: true
limit: 0
recommend: 0
website: https://nocodb.com/
github: https://github.com/nocodb/nocodb/
document: https://docs.nocodb.com/

BIN
apps/nocodb/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB