自定义数据库类型
默认情况下,Dify App Hub 使用 MySQL 进行应用配置的持久化存储。
1. 使用 MySQL
如果你有 MySQL 数据库,那么非常简单,只需要构建一个用于存放 Dify App Hub 数据的数据库连接并配置在环境变量:
mysql://username:password@host:port/database_name
2. 使用其他数据库
如果你的数据库是其他类型,则需要修改代码。下面以 PostgreSQL 为例说明如何配置。
首先,修改 Drizzle schema 配置中的数据库方言:
db/schema/apps.ts
import { pgTable } from 'drizzle-orm/pg-core'
// 将 mysqlTable 替换为 pgTable
然后在 .env 中配置你的数据库连接地址:
.env
DATABASE_URL=postgres://username:password@ip:port/dify-app-hub
重新生成迁移文件并执行:
# 删除旧的迁移文件
rm -rf db/migrations/*
# 生成新的迁移文件
pnpm --filter dify-app-hub db:generate
# 执行迁移
pnpm --filter dify-app-hub db:migrate
最后,按照你喜欢的方式(Docker 或者脚本)重新构建启动即可。