- 视频上传生成缩略图并提供占位封面和失败原因展示 - 支持 HLS 按需重新封装 MP4,并限制临时文件生命周期与访问权限 - 完善视频、文件 API 文档、搜索、批量删除和单次转码质量参数 - 修复备份恢复与跨后端迁移遗漏缩略图、HLS 清单和分片的问题 - 将备份任务、归档和下载权限按用户隔离 - 增加仅清理当前用户数据的高危存储清空流程和二次文字确认 - 修复 S3 中文文件名元数据及 CLI 数据库连接问题 - 补充备份恢复、用户隔离、媒体资源和转码相关测试
1.8 KiB
1.8 KiB
本地开发
在仓库根目录进行 Nuxt 4 全栈开发,数据默认写入 ./data。
环境要求
- Node.js 22
- npm 11(与
package.json中packageManager一致) - FFmpeg(视频缩略图与 HLS 转码;未安装时视频仍可上传,但使用占位封面)
启动
npm install
cp .env.example .env # 可选
npm run dev
访问 http://localhost:3000/setup 创建管理员。数据目录默认 ./data(DATA_DIR 可改)。
常用命令
| 命令 | 说明 |
|---|---|
npm run dev |
开发服务器 |
npm run build |
生产构建 |
npm run start |
运行 .output |
npm run lint |
ESLint |
npm run typecheck |
类型检查 |
npm test |
单元测试 |
npm run reset-password |
重置密码(可选用户名) |
npm run slider |
将登录验证重置为本地滑块 |
npm run clear-domains |
清除数据库中的网站域 / 图片域配置(双域名锁死时恢复) |
开发专用环境变量
| 变量 | 说明 |
|---|---|
DEV_BYPASS_ACCESS |
设为 true 可绕过登录(跳过 /setup,一般无需开启) |
DATA_DIR |
数据目录,默认 ./data |
完整变量列表见 环境变量。
双域名本地测试
修改系统 hosts 后可用两个测试域名验证分离逻辑,步骤见 双域名分离。
文档站
npm run docs:dev # VitePress 开发
npm run docs:build # 构建静态站点
npm run docs:preview # 预览构建结果
文档源码在 docs-site/;截图源文件在 docs/screenshots/(含 upload.png、gallery.png、tags.png、api.png、storage.png、settings.png、logs.png、setup.png 等),构建前会复制到 docs-site/public/screenshots/。在线文档:https://o96u.github.io/PicHost/