初始化 root 用户
bootstrap 控制服务启动时的初始化行为,目前主要用于自动创建初始 root 用户。
这类配置只应该用于首次部署或无人值守初始化。完成初始化后,生产环境建议关闭 bootstrap.create_root_user,避免后续误配置 root 密码造成混淆。
bootstrap: create_root_user: true root_username: "root" root_email: "admin@example.com" root_password_file: "/run/secrets/root_password"bootstrap.create_root_user
Section titled “bootstrap.create_root_user”类型:布尔值。
默认值:false。
作用:启动时检查是否需要创建初始 root 用户。
适合开启的场景:
- 首次部署,需要自动创建管理员。
- Docker Compose 或 Helm 生产部署需要无人值守初始化。
- 自动化测试或预置环境需要固定初始化流程。
适合关闭的场景:
- 已经完成初始化。
- 希望通过单独管理流程创建 root。
- 测试环境不需要 root 用户。
bootstrap.root_username
Section titled “bootstrap.root_username”类型:字符串。
默认值:root。
作用:初始 root 用户名。
示例:
bootstrap: root_username: "admin"用户名不是 secret,但会出现在审计、管理界面或日志上下文中。建议不要使用个人真实姓名。
bootstrap.root_email
Section titled “bootstrap.root_email”类型:字符串。
默认值:空字符串。
作用:初始 root 用户邮箱。
示例:
bootstrap: root_email: "admin@example.com"建议在以下场景填写:
- 启用了邮箱验证、密码找回或邮箱 2FA。
- 希望 root 账号能接收系统邮件。
- 运维流程要求管理员账号有可追踪邮箱。
如果没有 SMTP 配置,可以先留空,后续在用户资料中补充。
bootstrap.root_password
Section titled “bootstrap.root_password”类型:字符串 secret。
默认值:空字符串。
作用:初始 root 用户密码。
生产环境必须使用强密码,并推荐使用文件或 secret 注入:
SYNCTV_BOOTSTRAP_ROOT_PASSWORD_FILE=/run/secrets/root_password生成建议:使用密码管理器生成至少 16 位随机密码。
不要使用:
adminpasswordroot- 项目名或域名
- 文档示例里的固定值
| 环境变量 | 对应配置 |
|---|---|
SYNCTV_BOOTSTRAP_CREATE_ROOT_USER | bootstrap.create_root_user |
SYNCTV_BOOTSTRAP_ROOT_USERNAME | bootstrap.root_username |
SYNCTV_BOOTSTRAP_ROOT_EMAIL | bootstrap.root_email |
SYNCTV_BOOTSTRAP_ROOT_PASSWORD | bootstrap.root_password |
SYNCTV_BOOTSTRAP_ROOT_PASSWORD_FILE | bootstrap.root_password 文件 |