Add containerized production user command

This commit is contained in:
openclaw 2026-07-22 22:33:48 +08:00
parent 2db043cda6
commit 5a9c35841f
2 changed files with 23 additions and 1 deletions

16
deploy/add-user.sh Executable file
View File

@ -0,0 +1,16 @@
#!/bin/sh
set -eu
if [ "$#" -ne 2 ]; then
printf '用法:%s <用户名> <密码>\n' "$0" >&2
exit 1
fi
project_dir=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
exec docker compose \
--project-directory "$project_dir" \
-f "$project_dir/compose.pro.yaml" \
exec -T api \
npm run user:add --workspace @cents/api -- "$1" "$2"

View File

@ -10,12 +10,18 @@ PUBLIC_ORIGIN=https://cents.example.com npm run bootstrap --workspace @cents/api
应用邀请使用 256 位随机 `key`,数据库只保存 SHA-256 摘要。链接固定 7 天过期并且只能创建一个账号。 应用邀请使用 256 位随机 `key`,数据库只保存 SHA-256 摘要。链接固定 7 天过期并且只能创建一个账号。
管理员也可以直接添加用户: 开发环境可以直接添加用户:
```bash ```bash
npm run user:add -- '用户名' '至少8位的密码' npm run user:add -- '用户名' '至少8位的密码'
``` ```
生产环境由包装脚本进入正在运行的 API 容器,宿主机不需要安装 Node.js 或 npm
```bash
./deploy/add-user.sh '用户名' '至少8位的密码'
```
用户与个人账本在同一数据库事务内创建;用户名已存在或任一步失败时都不会留下半成品数据。 用户与个人账本在同一数据库事务内创建;用户名已存在或任一步失败时都不会留下半成品数据。
新用户打开 `/invite?key=...` 后填写姓名和密码: 新用户打开 `/invite?key=...` 后填写姓名和密码: