release: sync public installer asset README.md
This commit is contained in:
@@ -14,13 +14,15 @@ Options include `--install-dir`, PostgreSQL connection options, `--postgres-pass
|
|||||||
|
|
||||||
安装完成后,菜单 `5) 状态/诊断/维护` 提供本地媒体库维护子菜单:查看状态、一键挂载、按既有路径启动/重启,以及停用挂载。挂载目录必须是 root 可访问的已存在绝对目录,且首次配置时必须为空;路径及 `XYMEDIA_FUSE_ENABLED` 会持久化到 `.env`,应用配置固定使用容器内 `/mnt/xymediavault`。维护动作只停止和启动 `app`,不会停止 PostgreSQL;停用会卸载由 XyMediaVault 识别的 FUSE 挂载并恢复 base compose。脚本拒绝远程 Docker、符号链接路径和 foreign/unknown mount。
|
安装完成后,菜单 `5) 状态/诊断/维护` 提供本地媒体库维护子菜单:查看状态、一键挂载、按既有路径启动/重启,以及停用挂载。挂载目录必须是 root 可访问的已存在绝对目录,且首次配置时必须为空;路径及 `XYMEDIA_FUSE_ENABLED` 会持久化到 `.env`,应用配置固定使用容器内 `/mnt/xymediavault`。维护动作只停止和启动 `app`,不会停止 PostgreSQL;停用会卸载由 XyMediaVault 识别的 FUSE 挂载并恢复 base compose。脚本拒绝远程 Docker、符号链接路径和 foreign/unknown mount。
|
||||||
|
|
||||||
普通全新安装创建的持久容器名称为 `xymedia-postgres`、`xymedia-app`、`xymedia-xiaoya`、`xymedia-controller` 和 `xymedia-aliyuntvtoken`;数据库迁移是短生命周期任务,会使用带本次安装 nonce 的 `xymedia-app-migrate-*` 名称并在完成后删除。升级已有安装时,`.env` 中已有的 `XYMEDIA_XIAOYA_CONTAINER` 会原样保留,控制器只记录并连接该真实容器名,不会重命名用户已有的小雅容器。已有 PostgreSQL、app 等旧 Compose 容器由服务名管理,安装器不会按名称删除无关容器;旧名称可能在迁移期间暂时保留,需由管理员按实际项目状态处理孤立容器。
|
主菜单 `6) 查看小雅控制器地址和密钥` 可以查看本机控制器连接信息。选择 `2) 安装管理平台和本机小雅` 并完成安装后,安装器也会自动显示控制器地址和密钥;密钥不会写入安装日志。
|
||||||
|
|
||||||
PostgreSQL 启动后安装器每 2 秒通过 Compose 查询其容器 ID,再读取 Docker health 状态,持续等待到 `healthy`,没有固定超时。已用秒数和状态会显示在终端并追加到安装日志;在等待期间按 Ctrl-C 会记录 PostgreSQL 日志、停止等待并执行既有临时目录清理,安装以未完成状态退出。
|
普通全新安装创建的持久容器名称为 `xymedia-postgres`、`xymedia-app`、`xymedia-xiaoya`、`xymedia-controller` 和 `xymedia-aliyuntvtoken`;数据库迁移是短生命周期任务,使用 Compose 自动生成的临时名称并在完成后删除。升级已有安装时,`.env` 中已有的 `XYMEDIA_XIAOYA_CONTAINER` 会原样保留,控制器只记录并连接该真实容器名,不会重命名用户已有的小雅容器。已有 PostgreSQL、app 等旧 Compose 容器由服务名管理,安装器不会按名称删除无关容器;旧名称可能在迁移期间暂时保留,需由管理员按实际项目状态处理孤立容器。
|
||||||
|
|
||||||
|
PostgreSQL 启动后安装器每 2 秒通过 Compose 查询其容器 ID,再读取 Docker health 状态,持续等待到 `healthy`,没有固定超时。应用启动后同样持续等待 `/api/health`;数据库迁移的原始输出会实时显示并追加到安装日志。已用秒数和状态会显示在终端;在等待期间按 Ctrl-C 会记录对应容器日志、停止等待并执行既有临时目录清理,安装以未完成状态退出。
|
||||||
|
|
||||||
FUSE 维护要求安装目录、`.env`、`config.yaml` 和 `state` 由 root 拥有且不允许 group/world 写入;不满足时脚本会拒绝执行。快照、配置写入临时文件和日志均在 `/tmp` 下随机命名的 root 私有目录中通过 `mktemp` 创建,权限为 `700/600`,不会在可写安装目录中创建可预测临时文件或持久日志。
|
FUSE 维护要求安装目录、`.env`、`config.yaml` 和 `state` 由 root 拥有且不允许 group/world 写入;不满足时脚本会拒绝执行。快照、配置写入临时文件和日志均在 `/tmp` 下随机命名的 root 私有目录中通过 `mktemp` 创建,权限为 `700/600`,不会在可写安装目录中创建可预测临时文件或持久日志。
|
||||||
|
|
||||||
主安装器的安装日志也使用 root 私有随机临时目录和 `mktemp`,退出时自动清理;`.env` 更新临时文件使用安装目录同文件系统内的随机名称,并拒绝 `.env` symlink。root 执行时,已有安装目录路径组件必须由 root 拥有且不可 group/world writable。
|
主安装器的安装日志也使用 root 私有随机临时目录和 `mktemp`,退出时自动清理;迁移或健康检查失败时会先复制到安装目录的 `install.log` 并显示路径。`.env` 更新临时文件使用安装目录同文件系统内的随机名称,并拒绝 `.env` symlink。root 执行时,已有安装目录路径组件必须由 root 拥有且不可 group/world writable。
|
||||||
|
|
||||||
公开安装器的普通安装默认关闭 FUSE,并将 `compose.fuse.yaml` 与 `remount-fuse.sh` 下载到安装目录。只有 FUSE 开启时 app、迁移和健康启动才合并 FUSE override;controller-only 模式不会下载或创建这些文件。维护闭环要求 Docker Compose v2、`/dev/fuse` 字符设备和 root 权限。
|
公开安装器的普通安装默认关闭 FUSE,并将 `compose.fuse.yaml` 与 `remount-fuse.sh` 下载到安装目录。只有 FUSE 开启时 app、迁移和健康启动才合并 FUSE override;controller-only 模式不会下载或创建这些文件。维护闭环要求 Docker Compose v2、`/dev/fuse` 字符设备和 root 权限。
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user