mirror of
https://github.com/DayuanJiang/next-ai-draw-io.git
synced 2026-09-02 01:20:23 +08:00
feat: add file-based admin settings panel at /admin
Settings saved in the panel are written to data/settings.json and overlaid onto process.env, taking precedence over environment variables and applying immediately without restart. Enable by setting ADMIN_PASSWORD; on serverless platforms without persistent disk the panel degrades to read-only.
This commit is contained in:
@@ -222,6 +222,23 @@ npm run dev
|
||||
|
||||
注意:`claude` 系列已在带有 AWS、Azure、GCP 等云架构 Logo 的 draw.io 图表上进行训练,因此如果您想创建云架构图,这是最佳选择。
|
||||
|
||||
### 管理面板
|
||||
|
||||
无需手动编辑 `.env`,您可以在 Web 管理面板中管理大部分服务端设置(提供商密钥、模型行为、访问码、配额、功能开关):
|
||||
|
||||
1. 设置 `ADMIN_PASSWORD` 环境变量(不设置则面板禁用)。
|
||||
2. 访问 `/admin` 并登录。
|
||||
3. 保存的设置会写入 `data/settings.json` 并立即生效,无需重启(少数设置如 Langfuse 和 DynamoDB 标记为"需要重启")。
|
||||
|
||||
优先级:面板中保存的设置覆盖环境变量,环境变量覆盖内置默认值。删除已保存的值会回退到环境变量。
|
||||
|
||||
注意事项:
|
||||
|
||||
- 密钥以明文形式存储在 `data/settings.json` 中(文件权限 600),请妥善保管该文件。
|
||||
- 在无服务器平台(Vercel、Cloudflare Workers)上没有持久化磁盘,面板为只读 — 请改用环境变量配置。
|
||||
- 使用 Docker 时,`data/` 目录通过 `docker-compose.yml` 中的卷持久化。
|
||||
- `NEXT_PUBLIC_*` 变量在构建时固化,无法在面板中修改。
|
||||
|
||||
|
||||
## 工作原理
|
||||
|
||||
|
||||
@@ -221,6 +221,23 @@ AWS BedrockとOpenRouter以外のすべてのプロバイダーはカスタム
|
||||
|
||||
注:`claude`シリーズはAWS、Azure、GCPなどのクラウドアーキテクチャロゴ付きのdraw.ioダイアグラムで学習されているため、クラウドアーキテクチャダイアグラムを作成したい場合は最適な選択です。
|
||||
|
||||
### 管理パネル
|
||||
|
||||
`.env` を手動で編集する代わりに、Web 管理パネルでほとんどのサーバー設定(プロバイダーキー、モデル動作、アクセスコード、クォータ、機能)を管理できます:
|
||||
|
||||
1. `ADMIN_PASSWORD` 環境変数を設定します(未設定の場合、パネルは無効になります)。
|
||||
2. `/admin` にアクセスしてサインインします。
|
||||
3. 保存された設定は `data/settings.json` に書き込まれ、即座に反映されます — 再起動は不要です(Langfuse や DynamoDB など一部の設定は「再起動が必要」と表示されます)。
|
||||
|
||||
優先順位:パネルで保存された設定は環境変数を上書きし、環境変数は組み込みのデフォルト値を上書きします。保存した値を削除すると環境変数にフォールバックします。
|
||||
|
||||
注意事項:
|
||||
|
||||
- シークレットは `data/settings.json` に平文で保存されます(ファイルモード 600)。ファイルの管理にはご注意ください。
|
||||
- サーバーレスプラットフォーム(Vercel、Cloudflare Workers)には永続ディスクがないため、パネルは読み取り専用です — 環境変数で設定してください。
|
||||
- Docker では、`data/` ディレクトリは `docker-compose.yml` のボリュームで永続化されます。
|
||||
- `NEXT_PUBLIC_*` 変数はビルド時に固定されるため、パネルでは変更できません。
|
||||
|
||||
|
||||
## 仕組み
|
||||
|
||||
|
||||
Reference in New Issue
Block a user